C++ 和提升program_options错误:'desc'不命名类型

c++ and boost program_options error: 'desc' does not name a type

本文关键字:desc 类型 program 错误 options C++      更新时间:2023-10-16

我试图遵循这个教程的boost program_options,但我得到这个错误:

错误:'desc'没有指定类型。

这是我的源代码:

#include <boost/program_options.hpp>
using namespace std;
namespace po = boost::program_options;
po::options_description desc("Allowed options");
desc.add_options()
    ("help", "produce help message")
    ("compression", po::value<int>(), "set compression level")
;
int main()
{
    return 0;
}

错误出现在以'desc.add_options'开头的行,而不是我构造它的行。

/usr/local/boost是我的BOOST_ROOT,我把它添加到我的代码块编译器设置中。编译器参数为-I/usr/local/boost

为什么不工作?

看起来您试图使用

po::options_description desc("Allowed options");
desc.add_options()

在所有函数之外的顶层。