BOOST库 --boost_options组件使用

系统环境Ubuntu14.04 LTS g++-4.8

1、示例代码 boost_options.cpp


#include <iostream>
using namespace std;

#include <boost/program_options.hpp>
namespace po = boost::program_options;

int main(int argc, char*argv[])
{
    //int level;
    po::options_description desc("Allowed options");
    desc.add_options()
        ("help", "produce help message")
        //("help,h", "produce help message")
        ("compression", po::value<int>(), "set compression level");
        //("compression", po::value<int>(&level)->default_value(1), "set compression level");

    po::variables_map vm;
    po::store(po::parse_command_line(argc, argv, desc), vm);
    po::notify(vm);

    if(vm.count("help"))
    {
        cout<<desc<<endl;
        return 1;
    }

    if(vm.count("compression"))
    {
        cout<<"compression level was set to "<<vm["compression"].as<int>()<<"."<<endl;
        //cout<<"compression level: "<<level<<endl;
    }
    else
    {
        cout<<"compression level was not set."<<endl;
    }

    return 0;
}

2、说明:BOOST库大多数组件不需要编译链接,直接在自己的源码里包含相应头文件夹即可。但少量库(如chrono、date_time、regex、program_options、thread、python等),必须编译成静态库或者动态库,并在构建时指定链接选项才能使用。

program_options需要指定库文件

$g++ -I/usr/local/inlcude -L/usr/local/lib boost_options.cpp -o boost_options -lboost_program_options

$./boost_options --help

输出以下内容:
Allowed options:
–help produce help message
–compression arg set compression level

$./boost_options --compression 100

输出以下内容:
compression level was set to 100.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IvanLJF

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值