首页 / 软件开发 / C++ / 通过预编译头文件来提高CB的编译速度
通过预编译头文件来提高CB的编译速度2008-01-05C++ Builder是最快的C++编译器之一,从编译速度来说也可以说是最快的win32C++编译器了。除了速度之外,C++builder的性能也在其它C++编译器的之上,但许多delphi程序员仍受不了C++builder工程的编译速度。的确,delphi的速度要比任和c++的编译器都要快好多。Delphi在编译一个小工程的时候可能不到一秒,大的工程一般也在5秒钟这内编译完成了。为什么delphi会比c++builder快这么多?是否有方法来c++builder的编译速度?本文就讲解了为什么C++的编译器速度会慢,并且介绍了一个简单的方法来减少c++builder的编译时间。为什么c++编译器的速度会慢?c++builder 使用者怎么通过预编译头文件来减少编译时间?讲解基于VCL可视化工程的预编译头文件方法优化c++builder对预编译头文件的使用结论注意事项为什么c++编译器速度慢?在C++中,你只能使用预定义或是预先声明了的函数,这意味什么?来看一个简单的例子,函数A()调用函数B(),函数A()只能在函数B()的原型或是函数体在A()之前才能调用它。下面的例子说明了这一点:// declaration or prototype for B
void B();
void A()
{
B();
}
// definition, or function body of B
void B()
{
cout << "hello";
}
没有B()的原型,这个代码不会编译通过的,除非函数B()的函数体移到函数A()之前。对于编译器来说,函数的原型很重要。当你运行程序时,编译器都要插入恰当的代码来调用程序。编译器必需知道要有多少个参数传给函数。也要知道函数的参数应该在栈里还是在寄存器里。总而言这,编译器必需知道怎么来产生正确的代码来调用这个函数,这就要求编译器必需知道预先声明或定义了的被调用的函数。