C++ 学习笔记 Boost 1.78 安装和使用

本文详细指导如何下载并配置Boost库,包括在VS2019中设置编译环境,CMake项目的配置,以及在实际项目中使用Boost的例子。展示了Boost_VERSION等关键信息的获取和项目链接。

下载boost

下载后,解压。

进入解压后的文件夹,运行bootstrap.bat

 成功后,提示,

Bootstrapping is done. To build, run:

    .\b2

To adjust configuration, edit 'project-config.jam'.

本人使用的默认配置,直接运行b2.exe

 约几分钟后,安装成功,并提示了include 和 library的路径

创建在VS2019中创建C++项目

在项目属性中指定附加包含目录

指定附加库目录

#include <iostream>
#include <boost/version.hpp>	//包含boost头文件
#include <boost/config.hpp>
using namespace std;


int main()
{
    std::cout << "Hello World!\n";

	cout << BOOST_VERSION << endl;
	cout << BOOST_LIB_VERSION << endl;
	cout << BOOST_PLATFORM << endl;
	cout << BOOST_COMPILER << endl;
	cout << BOOST_STDLIB << endl;

	system("pause");
	return 0;

}

运行结果

CMake 项目中的使用方法

创建CMake 项目

在 CMakeList.txt中添加Boost配置

#Boost_FOUND            - 如果找到了所需的库就设为true
#Boost_INCLUDE_DIRS     - Boost头文件搜索路径
#Boost_LIBRARY_DIRS     - Boost库的链接路径
#Boost_LIBRARIES        - Boost库名,用于链接到目标程序
#Boost_VERSION          - 从boost/version.hpp文件获取的版本号
#Boost_LIB_VERSION      - 某个库的版本

#BOOST_ROOT             - 首选的Boost安装路径
#BOOST_INCLUDEDIR       - 首选的头文件搜索路径 e.g. <prefix>/include
#BOOST_LIBRARYDIR       - 首选的库文件搜索路径 e.g. <prefix>/lib
#Boost_NO_SYSTEM_PATHS  - 默认是OFF. 如果开启了,则不会搜索用户指定路径之外的路径

SET(BOOST_ROOT "C:/boost/boost_1_78_0") 
FIND_PACKAGE(Boost)
IF (Boost_FOUND)
    INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
    ADD_DEFINITIONS( "-DHAS_BOOST" )
    LINK_DIRECTORIES(${Boost_LIBRARY_DIRS})

    MESSAGE( STATUS "Boost_LIB_VERSION = ${Boost_LIB_VERSION}.")
    MESSAGE( STATUS "Boost_INCLUDE_DIRS = ${Boost_INCLUDE_DIRS}.")
    MESSAGE( STATUS "Boost_LIBRARY_DIRS = ${Boost_LIBRARY_DIRS}.")

    add_executable (CMakeProject1 "CMakeProject1.cpp" "CMakeProject1.h")
    target_link_libraries (CMakeProject1 ${Boost_LIBRARIES})
ENDIF()

运行成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值