Come analizzare il file ini con Boost

Ho un file ini che contiene alcuni valori di esempio come:

[Section1] Value1 = 10 Value2 = a_text_string 

Sto cercando di caricare questi valori e stamparli nella mia applicazione con Boost ma non capisco come farlo in C ++.

Ho cercato in questo forum per trovare alcuni esempi (ho sempre usato C e quindi non sono molto bravo in C ++) ma ho trovato solo esempi su come leggere i valori da file tutti in una volta.

Ho bisogno di caricare solo un singolo valore quando voglio, come string = Section1.Value2 perché non ho bisogno di leggere tutti i valori, ma solo alcuni di essi.

Vorrei caricare singoli valori e memorizzarli in variabili per poterli utilizzare quando voglio nella mia applicazione.

È ansible farlo con Boost?

Al momento, sto usando questo codice:

 #include  #include  #include  #include  #include  #include  #include  #include  #include  namespace pod = boost::program_options::detail; int main() { std::ifstream s("file.ini"); if(!s) { std::cerr<<"error"<<std::endl; return 1; } std::set options; options.insert("Test.a"); options.insert("Test.b"); options.insert("Test.c"); for (boost::program_options::detail::config_file_iterator i(s, options), e ; i != e; ++i) std::cout <value[0] << std::endl; } 

Ma questo basta leggere tutti i valori in un ciclo for ; al contrario, voglio solo leggere i singoli valori quando voglio e non ho bisogno di inserire valori nel file, perché è già stato scritto con tutti i valori di cui ho bisogno nel mio programma.