Boost库的使用(Windows)

1、Boost库下载

进入网页后点击download

2、解压、执行脚本

如解压到D:\boost_1_60_0,并执行bootstrap.bat文件。点击运行即可,直至控制台自动关闭。

3、编译

上一步生成b2.exe文件,点击运行既可,直至控制台自动关闭。

4、VS2015试用

A、添加环境变量

添加D:\boost_1_60_0\stage\lib到path

B、项目属性设置

  • D:\boost_1_60_0添加到:项目|项目属性|VC++目录|包含目录。

  • D:\boost_1_60_0\stage\lib添加到:项目|项目属性|配置属性|连接器|常规|附加库目录。

5、代码


#include <iostream>
#include <thread>
#include <map>
#include <string>
#include <mutex>
#include <boost/thread/shared_mutex.hpp>//具体到相应文件
#include <boost/thread/thread.hpp>
class dns_entry {
    std::string s;
public:
    dns_entry()  = default;//默认构造函数
    dns_entry(const std::string &_s):s(_s){}
    std::string get() const
    {
        return s;
    }
};
class dns_cache
{
    std::map<std::string, dns_entry> entries;
    mutable boost::shared_mutex entry_mutex;
public:
    dns_entry find_entry(const std::string & domain) const
    {
        boost::shared_lock<boost::shared_mutex> lk(entry_mutex); // 1,保护共享和只读权限
        std::cout << "共享\t" << domain << std::endl;
        const std::map<std::string, dns_entry>::const_iterator it =
            entries.find(domain);
        std::cout << "共享锁\t" << domain <<"释放"<< std::endl;
        return (it == entries.end()) ? dns_entry() : it->second;
    }
    void update_or_add_entry(const std::string & domain,
        const dns_entry & dns_details)
    {
        std::lock_guard<boost::shared_mutex> lk(entry_mutex); // 2,提供独占访问权限
        std::cout << "独占锁......" << domain << "......" << dns_details.get() << std::endl;
        entries[domain] = dns_details;
        std::cout << "独占锁......" << domain << "......" << dns_details.get() <<"......释放"<< std::endl;
    }
};
void funA(const char &c,dns_cache &dns_c)
{
    std::string s{ "dm" };
    for (unsigned i = 0;i < 5;++i)
    {
        dns_entry ds{ "dns_d" + s };
        dns_c.update_or_add_entry(s, ds);
        s += c;
    }
}
void funB(const char &c, const dns_cache &dns_c)
{
    std::string s{ "dm" };
    for (unsigned i = 0;i < 5;++i)
    {
        dns_entry de=dns_c.find_entry(s);
        s += c;
    }
}
int main()
{
    dns_cache dc;
    char c1 = 'a', c2 = 'b';
    std::thread t1{ funA,std::ref(c1),std::ref(dc) }, t2{ funA,std::ref(c2),std::ref(dc) },//update
        t3{ funB,std::ref(c1),std::ref(dc) }, t4{ funB,std::ref(c2),std::ref(dc) };//find
    system("pause");
    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 以下是在Windows系统下安装Boost的步骤: 1. 首先,从Boost官网(https://www.boost.org/)下载最新的源代码。选择一个压缩包,然后解压到本地目录。 2. 打开命令提示符(cmd),进入Boost源代码的根目录。 3. 在命令提示符中输入以下命令: ``` bootstrap.bat ``` 这个命令会生成一个名为b2的编译器,用于编译Boost。 4. 接着,输入以下命令: ``` b2 install --prefix=<Boost安装路径> ``` 其中,<Boost安装路径>是你希望安装Boost的目录。这个命令会将Boost编译并安装到指定的路径下。 5. 最后,在你的C++项目中使用Boost。假设你希望使用Boost的文件系统,可以添加以下头文件: ``` #include <boost/filesystem.hpp> ``` 然后,编译你的项目时链接Boost,例如: ``` g++ -o myprogram myprogram.cpp -lboost_system -lboost_filesystem ``` 这个命令会链接Boost的system和filesystem,使得你的程序可以使用这些提供的功能。 希望这些步骤能够帮助你在Windows系统下安装和使用Boost。 ### 回答2: 要在Windows上安装Boost,可以按照以下步骤进行操作: 1.首先,从Boost官方网站(https://www.boost.org/)上下载Boost的最新版本。确保选择适合你操作系统和编译器的版本。 2.解压下载的Boost文件到你想要安装的目录。例如,你可以将它解压到C:\boost\文件夹中。 3.打开命令提示符,并切换到你解压Boost文件的目录。你可以使用cd命令进行切换目录。 4.在命令提示符中,输入bootstrap.bat并运行它。这将在你的系统上创建一个名为b2的构建工具。 5.接下来,输入b2 install命令,并运行它。这将开始构建和安装Boost的各个模块。这可能需要一段时间,取决于你的系统配置和网络速度。 6.安装完成后,你可以在C:\boost\文件夹中找到Boost的所有文件和模块。你可以根据需要将其链接到你的项目中。 注意:在完成Boost的安装之前,确保你的系统上安装了与你编译器兼容的版本。如果使用Visual Studio编译器,你需要首先安装Visual Studio,并且在安装Boost之前配置好编译器和构建工具。 这些是在Windows上安装Boost的基本步骤。具体的安装和配置过程可能因个人需求和系统配置而有所不同。如果遇到任何问题,可参考Boost官方文档或寻求相关支持。 ### 回答3: 在Windows上安装Boost的步骤如下: 1. 首先,进入Boost官方网站(https://www.boost.org/)下载最新版本的BoostBoost是一个开源的C++,提供了很多有用的功能和工具。 2. 解压下载的Boost文件到合适的目录。可以选择将解压后的文件放在任意目录中,比如C盘的根目录下或者任意其他文件夹中。 3. 打开命令提示符(CMD)窗口。在开始菜单中搜索"cmd",然后点击“命令提示符”即可打开命令行界面。 4. 切换到Boost所在的目录。在命令提示符中使用"cd"命令加上Boost所在的目录,比如输入"cd C:\boost_1_76_0"进入该目录。 5. 运行Boost的引导程序。在命令提示符中输入"bootstrap.bat"命令,然后按Enter键运行该命令。这将会生成编译工具和配置文件。 6. 运行Boost的构建程序。在命令提示符中输入"b2"命令,然后按Enter键运行该命令。这将会开始编译和构建Boost。 7. 等待编译和构建过程完成。这个过程可能需要一些时间,具体时间取决于计算机的配置和Boost的大小。 8. 安装Boost。在命令提示符中输入"b2 install"命令,然后按Enter键运行该命令。这将会把Boost安装到系统目录中,默认情况下是C盘的根目录下。 9. 设置Boost的环境变量(可选)。如果希望在其他项目中使用Boost,可以将Boost的路径添加到系统的环境变量中。具体步骤是,在开始菜单中搜索"环境变量",然后点击“编辑系统的环境变量”,在弹出的窗口中添加Boost的路径。 综上所述,以上就是在Windows上安装Boost的步骤。可以根据自己的需要和具体情况进行安装和配置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值