2013-03-19 11 views
5

Ich habe ein Programm, das eine große Anzahl von Variablen aus einer Konfigurationsdatei mit boost :: program_options liest. Die Konfigurationsdatei arbeitet und liest die Werte, aber da es viele Optionen in der Datei gibt, möchte ich sie an Ort und Stelle dokumentieren. Zum Beispiel möchte ich die Config-Datei wie folgt aussehen:Boost Program_options Konfigurationsdatei Kommentare

# Here is a description of flag1 
# flag1 = true means blah blah blah 
# flag1 = false means ... 
flag1=true 
# Here is a description of flag 2 
. 
. 
. 

Das Problem ist, dass ich keine Dokumentation überall, die einen Weg finden kann beschreibt, dies zu tun. Ich bin ziemlich sicher, dass ich etwas wie a= für mein Kommentartrennzeichen verwenden könnte, und alle Kommentare einfach einer std::vector<string> zuweisen, die nach dem Parsen weggeworfen wird, aber ich würde gerne wissen, ob es eine angemessenere Möglichkeit gibt, Kommentarzeilen zu behandeln in einer Konfigurationsdatei.

Antwort

6

Die Dokumentation von program_options ist wirklich schlecht.

Fakt ist, es unterstützt bereits Kommentarzeilen, die mit '#' beginnen. Es wirft diese Linien aus. Sie müssen nichts tun, um diese Arbeit zu machen, es wird implizit gemacht. Es funktioniert nicht mit '//' usw.

+1

Das wollte ich hören, aber es wäre nett, wenn sie es irgendwo aufschrieben. –

+3

@GodricSeer http://www.boost.org/doc/html/program_options/overview.html#idp120049504 –

+0

Ich denke, das war mein Versehen. Vielen Dank. –

Verwandte Themen