编译器中的优化 编译器优化的障碍 不能跨模块优化 指针别名 动态内存分配 纯函数 虚函数与函数指针 代数化简 浮点归纳变量 具有非内联拷贝的内联函数 CPU优化的障碍 编译器优化的障碍 有几个因素会阻止编译器进行预期的优化。程序员知道这些障碍并知道如何避免它们。优化的某些重要的障碍讨论如下。 不能跨模块优化 编译器没有除正在编译模块以外其他模块中的函数信息。这阻止了跨函数调用的优化。如: // Example 8.20 **module1.cpp** int Func1(int x) { return x*x + 1; }