内连接与外连接<C/C++>
时间:2010-10-28 来源:aaron_xueli
在标准C语言中,const符号常是默认是外连接的即(分配存储),也就是说你不能在两个(或两个以上)编译单元中同时定义一个同名的const符号常量(重复定义错误),或者把一个const符号常量定义放在一个头文件中而在多个编译单元中同时包含该头文件。
但是在标准C++中,const符号常量默认是内连接的。因此可以定义在头文件中,当在不同的编译单元中同时包含该头文件时,编译器认为它们是不同的符号常量,因此,每个编译单元独立编译时会分别为它闪分配存储空间, 而在连接时进行常量合并(注:目的减少内存消耗,且优化程序效率。)。
相关阅读 更多 +