1
我有一个TU,其全局函数不会被任何其他TU使用。我读到,宣布他们为static
给他们内部联系,从优化的角度来看这是很好的。但我想知道我应该使用它们的正确情况是什么。当我知道他们不会在程序中的任何其他地方使用时,我是否应该给全局函数/变量内部链接始终总是?我应该总是给我的全球功能内部联系?
我有一个TU,其全局函数不会被任何其他TU使用。我读到,宣布他们为static
给他们内部联系,从优化的角度来看这是很好的。但我想知道我应该使用它们的正确情况是什么。当我知道他们不会在程序中的任何其他地方使用时,我是否应该给全局函数/变量内部链接始终总是?我应该总是给我的全球功能内部联系?
改为将它们放入unnamed namespace。
这是C++中的idiomatic solution,其功能仅用于当前的TU。
“从优化的角度来看这是很好的”no。 – 2014-09-30 22:14:55
您在这里选择什么可能会影响编译时间,但它在运行时会透明。 – iwolf 2014-09-30 22:16:55
@ Cheersandhth.-Alf它不会帮助编译器优化? – 2014-09-30 22:28:05