在後端服務器項目開發中,須要初始化一個Socket服務器,須要IP地址與對應端口號等參數;另外還可能由於對接數據庫,就還須要數據庫的相關配置參數,如我使用的是MySql數據庫,就須要數據庫服務器的IP地址、端口號、用戶名與密碼,還有數據庫的名稱。如若這些配置信息直接寫到代碼裏,就會給後期佈署帶巨大的麻煩;但本身去造輪子又很麻煩。如今可好了,Boost就提供了這樣的接口。mysql
#include <boost/property_tree/ptree.hpp> #include <boost/property_tree/ini_parser.hpp> namespace pt = boost::property_tree; #include <windows.h> int main(int argc, char** argv) { pt::ptree tree; pt::read_ini("config.ini", tree); string db_host = tree.get<std::string>("db.host"); string db_port = tree.get<std::string>("db.port"); string db_user = tree.get<std::string>("db.user"); string db_pswd = tree.get<std::string>("db.pswd"); /*此處是一個示例,mysql的鏈接字符串不是這樣的*/ cout << "mysql://" << db_user << ":" << db_pswd << "@" << db_host << ":" << db_port << endl; return 0; }
[db] host=127.0.0.1 port=3306 user=dilex pswd=123 [server] ip=127.0.0.1 port=8000