这包括三个相关的问题:
1)如何才能得到多个翻译单元?所有源文件和头文件不都应该“连接”在一起吗?否则,你最终会得到一个调用不属于该“程序”的代码的代码。难道一个翻译单元就是一个程序吗?
2)静态对象/类如何处理多个翻译单元?如果几个属于不同翻译单元的源文件包含一个将创建对象(具有静态数据成员)的头文件,那么每个翻译单元是否有一个单独的静态数据成员?
3)与问题2类似,全局变量是否跨多个翻译单元共享(有点像我提出它们是单独的程序-只是编译在一起吗?),还是全局变量仍然在所有翻译单元中作为全局变量运行?