use*_*112 4 c++ compiler-construction static global
这包括三个相关的问题:
1)您最终如何使用多个翻译单元?当然所有的源文件和头文件都会"加入"在一起,否则你最终会得到代码调用代码而不是那个"程序"的一部分.翻译单位不是一个程序吗?
2)静态对象/类如何处理多个翻译单元?如果不同翻译单元中的多个源文件包含一个标题,该标题会创建一个对象(具有静态数据成员),那么每个翻译单元会有一个单独的静态数据成员吗?
3)类似于问题2,全局变量是否在多个翻译单元之间共享(有点像我建议它们是单独的程序 - 只是编译在一起???)或者全局变量仍然在所有翻译单元中起作用?
1)每个源文件及其包含的头文件称为翻译单元.它被编译成目标文件.然后,链接器最终将所有目标文件加入到最终的可执行文件中.(简化,但给你一个基本的想法)
2)链接器将删除副本.
3)是的,见2)
| 归档时间: |
|
| 查看次数: |
2202 次 |
| 最近记录: |