大家怎么处理QT库和stl,boost等的关系

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大家怎么处理QT库和stl,boost等的关系相关的知识,希望对你有一定的参考价值。

参考技术A stl是自带的,boost是要下载编译的,boost马上要成为新标准库,你可以自已去下载boost库,网上有教程,有些库是要编译后才能用的

在Qt工程中加Boost

摘要: Boost是一个很强大的C++库,堪比STL,里面有很多非常优秀的类库。我不多介绍,详情见官网:http://www.boost.org/ 要在我们的Qt工程中把这个库加进去应该怎么做呢?我今晚试了一下。

Boost是一个很强大的C++库,堪比STL,里面有很多非常优秀的类库。我不多介绍,详情见官网:http://www.boost.org/

要在我们的Qt工程中把这个库加进去应该怎么做呢?我今晚试了一下。

我从网上下载了Boost压缩文件,下载地址:boost_1_52_0.tar.gz

下载到本地,解压。推荐一个Boost介绍的PDF文档:《Boost程序库完全开发指南》

 

现在,我们的项目将来会在Qt平台上开发。那么如何将Boost引入我们的项目呢?

每个Qt工程都有一个 xxx.pro 文件。我们需要在这个文件里指定Boost路径。比如,在我的电脑上,Boost解压出来的文件目录在

/home/hevake/Workspace/boost-downloads/boost_1_52_0/

那么,我们要将这个路径加入到工程的头文件目录中去。如下:

 

#-------------------------------------------------
#
# Project created by QtCreator 2013-01-22T21:07:04
#
#-------------------------------------------------
  
QT       += core
QT       -= gui
  
TARGET = boost-test
  
INCLUDEPATH += /home/hevake/Workspace/boost-downloads/boost_1_52_0/
  
CONFIG   += console
CONFIG   -= app_bundle
  
TEMPLATE = app
 
SOURCES += main.cpp

然后,在需要引用Boost库的源文件中将Boost头文件包含进来就可以引用了。如下:

 

#include "dialog.h"
  
#include <boost/timer.hpp>
#include <QDebug>
  
int main(int argc, char *argv[])
{
    boost::timer tmr;
  
    QApplication a(argc, argv);
    Dialog w;
    w.show();
  
    qDebug() << tmr.elapsed() << "S" << endl;
    return a.exec();
}

下面,我们就可以爽快地使用Boost里的所有库类了!  

 

https://yq.aliyun.com/articles/33100

以上是关于大家怎么处理QT库和stl,boost等的关系的主要内容,如果未能解决你的问题,请参考以下文章

在visualstudio中使用Qt

Qt和C++关系

Qt6STL-STL分析

MinGW是啥东西?它和QT是啥关系?怎么用MinGW

boost::asio基本使用

ODB学习笔记之基础环境搭建