boost::program_options::abstract_variables_map
// In header: <boost/program_options/variables_map.hpp> class abstract_variables_map { public: // public member functions abstract_variables_map(); abstract_variables_map(const abstract_variables_map *); virtual ~abstract_variables_map(); const variable_value & operator[](const std::string &) const; void next(abstract_variables_map *); // private member functions virtual const variable_value & get(const std::string &) const = 0; };
实现字符串到字符串的映射,并提供方便的值转换功能。
abstract_variables_map
公有成员函数abstract_variables_map();
abstract_variables_map(const abstract_variables_map * next);
virtual ~abstract_variables_map();
const variable_value & operator[](const std::string & name) const;
从 *this 和可能的变量映射链中获取变量 'name' 的值。
如果 *this 中没有该值。
如果存在下一个变量映射,则返回其值
否则,返回空值
如果存在默认值
如果下一个变量映射具有非默认值,则返回该值
否则,返回 *this 中的值
如果存在非默认值,则返回它。
void next(abstract_variables_map * next);
设置下一个变量映射,用于查找在 *this 中未找到的变量。
abstract_variables_map
私有成员函数virtual const variable_value & get(const std::string & name) const = 0;
返回存储在 *this 中的变量 'name' 的值,否则返回空值。