#include <libconfig.h++>
#include <iostream>
using namespace std;
void write_test()
{
libconfig::Config cfg; //1.声明 Config对象
auto& root = cfg.getRoot();
root.add("name", libconfig::Setting::TypeString);
root.add("age", libconfig::Setting::TypeInt);
root.add("address", libconfig::Setting::TypeString);
root.add("weight", libconfig::Setting::TypeFloat);
root.add("id", libconfig::Setting::TypeString);
root["name"] = "jack";
root["age"] = 22;
root["address"] = "china";
root["weight"] = 68.5;
root["id"] = "kk123";
cfg.writeFile("example.cfg");
}
void read_test()
{
libconfig::Config cfg; //1.声明 Config对象
cfg.readFile("example.cfg");
auto& root = cfg.getRoot();
//set default value
string name = "no name";
int age = 22;
double weight = 55.0;
root.lookupValue("name", name);
root.lookupValue("age", age);
root.lookupValue("weight1", weight);
cout << name << endl;
cout << age << endl;
cout << weight << endl;
}
int main()
{
write_test();
read_test();
return 0;
}