我正在读Bruce Eckel- Introduction to C++。其中说在C++中,通常不分配常量变量存储,而是将它们的值保存在符号表中,除非外部变量不与常量一起使用或者它们的地址不被取。
所以我们可以说,在C++中,Const总是默认为内部链接。但这一特性仍然取决于编译器是如何为C++语言制作的。或者这将永远是真的?
发布于 2013-06-14 19:53:03
const全局变量默认为内部链接。这是由标准指定的。
如果您获取const全局变量的地址,则必须为其分配存储空间。这也是标准规定的。
不过,仅仅因为它们有时会获得存储空间并不意味着编译器必须总是以这种方式使用它们。它仍然可以在它想要的地方替换它们,然后不断地折叠表达式。
https://stackoverflow.com/questions/17107825
复制相似问题