gflags是google开源的命令行参数解析工具,使用方便,支持从环境变量和配置文件中读取参数,现在来做一些小测试,下面程序测试使用-version查看应用程序版本号、使用-help查看应用程序帮助文档、解析命令行参数、及显示参数信息.
相关函数:
gflags::SetVersionString 设置版本号,可通过-version查看应用程序的版本号
gflags::SetUsageMessage 设置用户帮助信息,可通过-help查看帮助信息
google::RegisterFlagValidator 注册参数检查回调函数,检查用户输入参数是否符合规定,回调函数注册成功返回true,否则返回false
gflags::ParseCommandLineFlags解析命令行参数
gflags::ShowUsageWithFlagsRestrict显示帮助信息及输入参数信息,若设置了帮助信息,启动程序时显示帮助信息,并显示输入参数数据类型与参数默认值和当前输入值。
#include <iostream>
#include <gflags/gflags.h>
//设置命令行参数
DEFINE_string(configpaths, "./config.txt", "parameter config file");
DEFINE_int32(age, 15, "parameter age");
//检查age参数值是否符合规定的回调函数
static bool Check(const char* filename, google::int32 age){
return (age > 20) ? true : false;
}
static bo