相关疑难解决方法(0)

从字符串/ boost :: any map构建boost :: options

我有一张代表配置的地图.这是地图std::stringboost::any.

此映射在开始时初始化,我希望用户能够在命令行上覆盖这些选项.

我喜欢做的是使用该options_description::add_option()方法从此地图构建程序选项.但是,它需要一个模板参数,po::value<>而我只有boost::any.

到目前为止,我只是拥有代码的shell. m_Config代表我的配置类,并getTuples()返回一个std::map<std::string, Tuple>. TuplePair是一个typedef std::pair<std::string, Tuple>和Tuple包含boost::any我感兴趣的.

    po::options_description desc;
    std::for_each(m_Config.getTuples().begin(),
                  m_Config.getTuples().end(),
                  [&desc](const TuplePair& _pair)
    {
            // what goes here? :)
            // desc.add_options() ( _pair.first, po::value<???>, "");
    });
Run Code Online (Sandbox Code Playgroud)

有没有办法以这种方式构建它,还是我需要自己去做?

提前致谢!

c++ boost-program-options boost-any

9
推荐指数
1
解决办法
2112
查看次数

标签 统计

boost-any ×1

boost-program-options ×1

c++ ×1