aboutsummaryrefslogtreecommitdiffstats
path: root/samples/c++/stubcpp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'samples/c++/stubcpp.cpp')
-rw-r--r--samples/c++/stubcpp.cpp161
1 files changed, 0 insertions, 161 deletions
diff --git a/samples/c++/stubcpp.cpp b/samples/c++/stubcpp.cpp
deleted file mode 100644
index 59c9769..0000000
--- a/samples/c++/stubcpp.cpp
+++ /dev/null
@@ -1,161 +0,0 @@
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <iostream>
-
-#include "libconfig.h++"
-
-using namespace libconfig;
-
-int main(int argc, char **argv)
-{
- Config cfg;
- char *locale = NULL;
-
-#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__)) \
- && ! defined(__MINGW32__)
-
- locale = "French";
-
-#elif defined(__APPLE__)
-
- locale = "fr_CA.ISO8859-1";
-
-#else
-
- locale = "fr_FR.ISO-8859-1";
-
-#endif
-
- printf("new locale: %s\n", setlocale(LC_NUMERIC, locale));
- printf("before locale override; pi is: %f\n", 3.141592);
-
- try
- {
- FILE *fp = fopen("test.cfg", "r");
-
- if(! fp)
- {
- printf("Unable to open test.cfg\n");
- exit(1);
- }
-
- cfg.read(fp);
- fclose(fp);
-
-// const ConfigSetting& setting = cfg.lookup("application.window.size.w");
-// long val = setting;
-
- long val = cfg.lookup("application.window.size.w");
- printf("val: %ld\n", val);
-
- std::string title = cfg.lookup("application.window.title");
- std::cout << "title: " << title << std::endl;
-
- Setting &ss = cfg.lookup("application.window.title");
- std::string title2 = ss;
- std::cout << "title: " << title2 << std::endl;
-
- std::string rr = "foo";
-
- rr = (const char *)cfg.lookup("application.window.title");
-// rr = (std::string)(cfg.lookup("application.window.title"));
- std::cout << "rr: " << rr << std::endl;
-
- const char *rrr = cfg.lookup("application.window.title");
- std::cout << "rrr: " << rrr << std::endl;
-
- Setting &s = cfg.lookup("application.group1.my_array");
- long val4;
- val4 = s[4];
- printf("item #4 is: %ld\n", val4);
- printf("location of my_array is %d\n", s.getSourceLine());
-
- Setting &grp = cfg.lookup("application.group1.group2");
-
- Setting &zzz = cfg.lookup("application.group1.group2.zzz");
- printf("location of zzz is at %d\n", zzz.getSourceLine());
-
- Setting &root = cfg.getRoot();
-
- Setting &rootn = root.add("new-one-at-top", Setting::TypeGroup);
-
- Setting &ngp = rootn.add("element", Setting::TypeFloat);
-
- Setting &misc = root["misc"];
- unsigned int portnum = 0;
- misc.lookupValue("port", portnum);
- printf("port # is: %d\n", portnum);
-
- ngp = 1.1234567890123;
-
-// long val22 = s[22];
-// printf("item #22 is: %d\n", val22);
-
- Setting &snew = grp.add("foobar", Setting::TypeArray);
-
- snew.add(Setting::TypeInt);
- snew.add(Setting::TypeInt);
-
- snew.add(Setting::TypeInt);
- snew.add(Setting::TypeInt);
-
- puts("created new array");
-
- snew[0] = 55;
- puts("elem 0");
- snew[1] = 66;
- puts("elem 1");
-
- cfg.setAutoConvert(true);
-
- double dd = cfg.lookup("application.group1.x");
- printf("auto-converted int->double: %f\n", dd);
-
- int ii = cfg.lookup("misc.pi");
- printf("auto-converted double->int: %d\n", ii);
-
- Setting &sdel = cfg.lookup("application");
-
- sdel.remove("group1");
-
-
- Setting &books = cfg.lookup("books");
- puts("found books");
- Setting &book = books.add(Setting::TypeGroup);
- puts("added book");
-
- Setting &sss = book.add("Title", Setting::TypeString);
- puts("added title");
-
- sss = "Alice in Wonderland";
-
- Setting &sss2 = book.add("Price", Setting::TypeFloat);
- sss2 = 9.99;
-
- cfg.write(stdout);
-
- Setting &good = cfg.lookup("books.[2].author");
- std::string author = good;
- std::cout << "author: " << author << std::endl;
-
- Setting &bad = books[1]["blargh"];
- }
- catch(ParseException& ex)
- {
- printf("error on line %d: %s\n", ex.getLine(),
- ex.getError());
- }
- catch(SettingNotFoundException nfex)
- {
- printf("setting not found: %s\n", nfex.getPath());
- }
- catch(ConfigException& cex)
- {
- printf("config exception!\n");
- }
-
- printf("locale restored; pi is: %f\n", 3.141592);
-
- return(0);
-}