当前位置:  开发笔记 > 编程语言 > 正文

使用C++ Boost库提高VS项目的编译速度

如何解决《使用C++Boost库提高VS项目的编译速度》经验,为你挑选了1个好方法。

我刚刚开始使用Boost 1.36.这些库在减少我正在处理的非托管C++软件项目中所需的代码量方面非常有用.

但是,当我尝试使用这些库时,我的编译时间增加了十倍.这几乎抵消了我使用该库所获得的生产力增益.

我正在使用3GHz Intel双核,2GB内存和VS 2003.

我添加了一段代码.


#include "boost/numeric/ublas/matrix.hpp"   
#include "boost/numeric/ublas/vector.hpp"  
#include "boost/numeric/ublas/matrix_proxy.hpp"  

typedef ublas::bounded_matrix  Matrix;  
typedef ublas::bounded_vector  Vector;  

void Print(const Matrix& amount)
{

Vector total;

total.clear();
for (int category = 0; category < NUM_OF_CATEGORIES; category++)
{
    PrintLine(ublas::row(amount, category));
    total += ublas::row(amount, category);
}

PrintLine(total);   

}

void Print(const Matrix& amount)
{


#include "boost/numeric/ublas/matrix.hpp"   
#include "boost/numeric/ublas/vector.hpp"  
#include "boost/numeric/ublas/matrix_proxy.hpp"  

typedef ublas::bounded_matrix  Matrix;  
typedef ublas::bounded_vector  Vector;  

}

void Print(const Matrix& amount)
{

Vector total;

total.clear();
for (int category = 0; category < NUM_OF_CATEGORIES; category++)
{
    PrintLine(ublas::row(amount, category));
    total += ublas::row(amount, category);
}

PrintLine(total);   

}

是VS 2003的问题吗?
我知道VS 2008更快,但升级将是一个艰难的卖点.
是不是Boost针对快速运行时间进行了优化而不是快速编译?
我只是以次优的方式使用Boost Library吗?
或者我只是使用错误的工具来完成工作?



1> David Dibben..:

您是否尝试过使用预编译的标头?这包括StdAfx.h中的boost标头或用于预编译头的任何头文件?

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有