C++-编译和链接

C++ 生成可执行文件大致需要经过以下几个过程:
源程序 -> 预处理 -> 编译和优化 -> 生成目标文件(.obj) -> 链接 -> 可执行文件

1. 预处理

C++ 的预处理是指在 C++ 程序源代码被编译之前, 由预编译器对 C++ 程序源代码进行的处理, 这个过程并不对程序的源代码进行解析, 主要是完成以下几项任务:

  • 宏的替换
  • 删除注释
  • 处理预处理指令, 如#include, #ifdef等等

2. 编译和优化

  • 词法分析
  • 语法分析
  • 语义分析
  • 代码优化
  • 代码生成

内联函数的替换就发生在这一阶段

3. 生成目标文件

将汇编语言代码翻译成目标机器指令

4. 链接