gflags命令行参数解析
gflags库是google开源的命令行参数解析工具。
- 安装
官方没有提供二进制库,但是Debian/Ubuntu平台本身提供了二进制库,可以直接git clone https://github.com/gflags/gflags.git
进行安装。
windows需要下载源代码,然后编译。详细可参考[官网].(https://gflags.github.io/gflags/#download)
简要步骤是:
git clone https://github.com/gflags/gflags.git
然后,打开cmake图形界面:
点击configure,选择编译器,windows可选vs或者MinGW。要注意选vs时与自己本地安装的版本一致,以及注意win64。
配置完成会如上图选择编译项,可以默认。
点击Generate完成配置。
如果选择了VS的编译器,使用VS(最好管理员身份)打开gflags目录下的ALL_BUILD.vcxproj,然后在ALL_BUILD项目和INSTALL项目上分别点击生成。
成功后会在gflags/build-debug/include文件和gflags/build-debug/lib/Debug下生成.h头文件和.lib文件。
新建工程,测试
在工程的属性设置包含目录,库目录。链接器->输入->附加依赖项:gflags_nothreads_static.lib gflags_static.lib shlwapi.lib
调试参数设置命令行参数
// 例子
#include <iostream>
#include <gflags/gflags.h>
DEFINE_string(var, "", "input var");
int main(int argc, char ** argv) {
google::ParseCommandLineFlags(&argc, &argv, true);
std::cout << FLAGS_var << std::endl;
return 0;
}