编译为什么需要这么长时间? c++ c performance compilation language

编译器预编译头文件会更快,这至少从1988年就已经被认知。
C语言或C++语言编译器需要很长时间的通常原因是它需要 #include,预处理,然后词法分析无数的标记。
你可以练习一下,看一下运行cpp在一个典型的头文件集合上需要多长时间——然后测量词法分析输出所需的时间。
gcc -O使用由Chris Fraser和Jack Davidson开发的非常有效但有些缓慢的优化技术。大多数其他优化器可能会很慢,因为它们涉及对相当大的数据结构进行重复迭代。