宏与内联的区别
C/C++编译过程主要分为4个过程
- 编译预处理
- 编译、优化阶段
- 汇编过程
- 链接程序
宏是在预处理阶段由预处理器直接替换的,处理的是token,会将所有的name用token string代替,得到的结果仍然是程序文本。而内联函数是在编译期完成展开的,其代码将直接嵌入到汇编程序的文本段。
C/C++编译过程主要分为4个过程
宏是在预处理阶段由预处理器直接替换的,处理的是token,会将所有的name用token string代替,得到的结果仍然是程序文本。而内联函数是在编译期完成展开的,其代码将直接嵌入到汇编程序的文本段。