30 Ağustos 2016 Salı

program_options config_file_iterator Sınıfı

Giriş
Şu satırı dahil ederiz.
#include <boost/program_options/detail/config_file.hpp>
Daha kolay kullanmak için şu namaspace dahil edilebilir.
namespace pod = boost::program_options::detail;
ini dosyalarını kolayca dolaşmak için kullanılır.

Constructor - ifstream + set
Şöyle yaparız.
std::ifstream s = ;

namespace pod = boost::program_options::detail;
std::set<std::string> options;
options.insert("*");
pod::config_file_iterator i (s, options);
std::set ile sadece "*" karakteri kullanılabilir. ini dosyasının belli bölümlerini okumak için şöyle yapamayız !
std::set<std::string> options;
options.insert("Test.a");
options.insert("Test.b");
options.insert("Test.c");
Döngü içinde dönmek için şöyle yaparız.
//parser
for (pod::config_file_iterator i (s, options), e ; i != e; ++i)
{
  ...
}
string_key Alanı
Şöyle yaparız.
std::cout << i->string_key;
value Alanı
Şöyle yaparız.
std::cout << i->value[0];
Hem key, hem de value değerini yazdırmak için şöyle yaparız.
std::cout << i->string_key << " " << i->value[0];

Hiç yorum yok:

Yorum Gönder