diff options
author | Jonathan McCrohan <jmccrohan@gmail.com> | 2011-12-01 22:54:16 +0000 |
---|---|---|
committer | Jonathan McCrohan <jmccrohan@gmail.com> | 2011-12-01 22:54:16 +0000 |
commit | 58bf1382be0cbcf3f9649286fd2719b789a1595f (patch) | |
tree | b73665275a2d44879a8230c913b1ef21a42e57da /samples/c++/sample3.cpp | |
download | libconfig-58bf1382be0cbcf3f9649286fd2719b789a1595f.tar.gz |
Imported Upstream version 1.3.2upstream/1.3.2
Diffstat (limited to '')
-rw-r--r-- | samples/c++/sample3.cpp | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/samples/c++/sample3.cpp b/samples/c++/sample3.cpp new file mode 100644 index 0000000..da1de79 --- /dev/null +++ b/samples/c++/sample3.cpp @@ -0,0 +1,54 @@ +/************************************************************************* + ** Sample3 + ** Load sample.cfg and try to add a setting "foo".. + ** on success save to testfoo.cfg + *************************************************************************/ + +#include <iostream> +#include <libconfig.h++> + +using namespace libconfig; +using namespace std; + +/***************************************************************************/ + +int main() +{ + Config cfg; + try + { + /* Load the configuration.. */ + cout << "loading [sample.cfg]..."; + cfg.readFile("sample.cfg"); + cout << "ok" << endl; + + /* Add setting "foo" */ + cout << "add setting \"foo\"/..."; + Setting &root = cfg.getRoot(); + Setting &foo = root.add("foo", Setting::TypeInt); + foo = 1234; + cout << "ok" << endl; + + /** Look up an array element */ + cout << "looking up array element..."; + Setting &elem = cfg.lookup("arrays.values.[0]"); + int val = elem; + std::cout << "value is: " << val << std::endl; + std::cout << "path is: " << elem.getPath() << std::endl; + + /* Save to "samplefoo.cfg" */ + cout << "saving [samplefoo.cfg]..."; + cfg.writeFile("samplefoo.cfg"); + cout << "ok" << endl; + + cout << "Done!" << endl; + } + catch (...) + { + cout << "failed" << endl; + } + + return 0; +} + +/***************************************************************************/ |