目标码(object code)是计算机科学中编译器或汇编器处理源代码后所生产的代码,它一般由机器代码或接近于机器语言的代码组成。目标文件(object file)即存放目标代码的计算机文件,它常被称作二进制(binaries)。
目标码的增加,其实是源于代码体积(量)的增加。
inline
inline
:行内,与之相对outline
:行外。
inline
:背后的整体整体观念是,将“对此函数的每一个调用”都以函数本体替换之。这无疑会增加目标码(object code)的大小。
宏函数(Macros)
内联(inline)是为了弥补编译器对宏函数所缺乏的安全检查而提出,也即内联保留了宏的优势,即像函数,但不会招致函数调用的额外开销,比如建栈,将返回值,参数以及局部变量,压栈最后的清栈操作等等。
无论是内联还是宏函数,都是执行的文本替换,这是二者效率的根源,同时不可避免的也会增加目标码。