gflags FLAGS_flagfile 默认值
在gflags的参数中,可以使用--flagfile指定flag的配置文件,而不需要在程序运行过程中指定参数。当flagfile为空时,程序指定默认值方法。以解析文件中的flags
主要代码:
gflags::SetVersionString("1.0.0");
google::ParseCommandLineFlags(&argc, &argv, true);
if (FLAGS_flagfile.empty())
{
google::SetCommandLineOption("flagfile", "/home/const/flag.cfg");
cout<<"FLAGS_flagfile is empty. use default flag file.",<<endl;
}
google::SetCommandLineOption("flagfile", "gflags_sample.flags");
FLAGS_flagfile更新后,会自动重新读取该文件并更新文件里的gflags。
该方法可以起到reload的效果,后者覆盖前者,如果后面调用的方法没有定义某flag,那么不影响前面方法已经解析出的value,类似于merge的效果。
本文链接地址:https://const.net.cn/560.html