C++的编译单元、可执行程序、内部连接与外部连接
2015-11-30 10:19
351 查看
可执行程序的生成:
可执行程序是若干目标程序链接而成的, 每个目标文件是由对应的一个源代码文件编译而来的, 如果在A目标文件里想调用B目标文件里的函数, 就需要
在A源代码里声明B中的函数, 那么链接时刻就可以完成符号的定位.
编译单元:
一个.c .cpp为一个编译单元
内部连接:
内部链接就是该符号只在编译单元内有效,其他编译单元看不到,所以多个编译单元中可有相同符号。
外部连接:
外部链接就是其他编译单元能看到当前编译单元的符号,如果有相同的外部链接符号,就会在链接时报重定义符号的错误。
可执行程序是若干目标程序链接而成的, 每个目标文件是由对应的一个源代码文件编译而来的, 如果在A目标文件里想调用B目标文件里的函数, 就需要
在A源代码里声明B中的函数, 那么链接时刻就可以完成符号的定位.
编译单元:
一个.c .cpp为一个编译单元
内部连接:
内部链接就是该符号只在编译单元内有效,其他编译单元看不到,所以多个编译单元中可有相同符号。
外部连接:
外部链接就是其他编译单元能看到当前编译单元的符号,如果有相同的外部链接符号,就会在链接时报重定义符号的错误。
相关文章推荐
- 利用gcc对C语言的语句内嵌表达式扩展定义lambda宏
- c++文件操作精简详解
- 2015.11.26——Accelerated C++
- C语言_循环打印
- 扩展C++ string类
- C++ string实现原理
- C++箴言:理解 new-handler的行为
- 浅析C++内存分配与释放操作过程——三种方式可以分配内存new operator, operator new,placement new
- C++vptr初始化时间
- C++ typeid实现原理
- C++ dynamic_cast实现原理
- C++临时对象销毁时间
- C语言malloc和free实现原理
- C++输入字符串的问题
- C语言中++自增运算符后置时的使用说明(附C语言运算符优先级表)
- 指针
- 小甲鱼C语言视频教程免费下载
- C语言函数传值问题
- 中缀表达式转后缀表达式
- 如何学习c语言