摘要:
具有链接的实体,包括名字空间级的变量和函数 ,都是需要分配内存的。具有链接的实体如果在源文件 (cpp) 中出现多次,将意味着多次分配内存,每个内存空间定义一个特定的实体。这会导致 :1) 空间膨胀; 2) 出现多个变量,变量的状态不共享。因此,不能将下面的代码放在头文件:// avoid defining entities with external linkage in a headerint fudgeFactor;std::string hello("Hello, world!");void foo() {/* … */}上述的全局变量和函数定义,在该头文件被多个源 阅读全文