|
|
1
5
包含头文件或将其拆分为较小的单元,并将其包含在原始头文件和代码中。 至于代码大小,除非您的头做了一些非常不明智的事情,比如声明变量或定义函数,否则它们不应该对内存占用有太大的影响(如果有的话)。它们会在一定程度上影响您的编译时间,并污染您的名称空间。 |
|
|
2
4
除非使用预编译头文件,否则在源文件中包含头文件可能会稍微影响编译时间。但它不应该影响代码大小。重新定义宏不应该对编译时间或大小有任何影响。不过,这更多的是维护和一致性问题。 |
|
|
3
3
两者都不。相反,您应该清理代码并中断
|
|
|
4
2
你问:
在特定宏的情况下,对大小的回答是“否”,因为size of表达式可以在编译时计算,因此对时间的回答是“是”。两者都不太可能有重大意义。 |
|
|
5
2
除非您在一个非常有限的硬件上运行它,或者这被称为数十亿次,否则无论在编译时还是运行时,您都不会注意到这两者之间的任何区别。 去寻找任何看起来可读/可维护的东西。 就个人而言,我建议有更好的方法来实现你正在做的事情,而不涉及宏(即 inline functions 和/或 function templates )你必须小心使用你的解决方案,因为 a few gotchas 你需要注意。 |
|
|
6
1
包括该头和包含在其中的所有其他头将增加编译时间。如果有其他定义会改变代码的编译方式,那么它会影响运行时——如果由于这些定义,代码的编译方式有所不同,那么它当然会以不同的方式运行。尽管后者不常见,但要小心。 |
|
AstralHex · 矩阵乘法代码工作不正常 8 月前 |
|
|
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 8 月前 |
|
|
Die4Toast · 递归调用成员箭头运算符-> 8 月前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 8 月前 |