Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

Click here to view the latest version of this page.
PrevUpHomeNext

Class variables_map

boost::program_options::variables_map —

Synopsis

class variables_map
  :  : public boost::program_options::abstract_variables_map
{
public:
// construct/copy/destruct
variables_map();
variables_map(const abstract_variables_map *);

// public member functions
const  variable_value & operator[](const std::string &) const;

// private member functions
const  variable_value & get(const std::string &) const;
};

Description

Concrete variables map which store variables in real map.

This class is derived from std::map<std::string, variable_value>, so you can use all map operators to examine its content.

variables_map construct/copy/destruct

  1. variables_map();
  2. variables_map(const abstract_variables_map * next);

variables_map public member functions

  1. const  variable_value & operator[](const std::string & name) const;

    Obtains the value of variable 'name', from *this and possibly from the chain of variable maps.

    • if there's no value in *this.

      • if there's next variable map, returns value from it

      • otherwise, returns empty value

    • if there's defaulted value

      • if there's next varaible map, which has a non-defauled value, return that

      • otherwise, return value from *this

    • if there's a non-defauled value, returns it.

variables_map private member functions

  1. const  variable_value & get(const std::string & name) const;

    Implementation of abstract_variables_map::get which does 'find' in *this.

Copyright 2002-2004 Vladimir Prus

PrevUpHomeNext