读书人

内部联接是什么外部连接又是什么头

发布时间: 2013-10-14 12:54:46 作者: rapoo

内部连接是什么,外部连接又是什么,头晕。
概念很模糊,很不清晰,各个书都不一样。
[解决办法]
1)内联函数是内部连接。两个.cpp 可以有两个内联函数定义体,链接时不会产生命名冲突。
2)内联函数和声明是同一个性质的,是用来代替C的宏的。

就是说,程序中看到的,是内联函数的定义体,编译时只是当作声明处理。
编译时把内联函数展开成代码,替换到调用他的地方。

如果需要生成,函数调用代码,也只是当作局部作用域的函数处理,就像C中的static 函数一样。
好像,除非函数的,两个定义体代码不一致,否则当作一份处理。

当可以内联展开时,不用说,可以看作声明;
函数体,根本就没有生成代码,代码嵌入到调用他的地方了。

内联函数可以看作,C的宏的,高级形式。
内联函数,本来就是用来替换C的宏的。

当无法展开时,相当于编译器对该函数,隐形的另给出一份定义。
你的定义体,只是对那份定义的声明。





读书人网 >C++

热点推荐