如何高效使用C语言命令行解析包gflags进行复杂参数配置?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3132个文字,预计阅读时间需要13分钟。
前言:gflags 是 Google 提供的一个命令行参数处理的开源库,目前已独立开源。与传统的 getopt() 功能相比,gflags 功能更加强大,可以将不同的参数定义分散到各个源代码文件中,无需集中管理。提供了以下功能:
前言
gflags 是 Google 提供的一个命令行参数处理的开源库,目前已经独立开源,比传统的 getopt() 功能更加强大,可以将不同的参数定义分布到各个源码文件中,不需要集中管理。
提供了 C++ 和 Python 两个版本,这里仅详细介绍 C++ 版本的使用方式。
简介
配置参数分开还是集中管理没有严格的约束,关键要看项目里的统一规范,只是,gflags 可以支持这两种方式,允许用户更加灵活的使用。
当将参数分布到各个源码文件中时,如果定义了相同的参数,那么在编译的时候会直接报错。
安装
很多发行版本会有自己相关的开发库,这里简单介绍使用 CMake 从源码进行编译,源码可以从 GitHub gflags Releases 中选择相关的版本。
如下命令以最新的 2.2.2 版本为例。
本文共计3132个文字,预计阅读时间需要13分钟。
前言:gflags 是 Google 提供的一个命令行参数处理的开源库,目前已独立开源。与传统的 getopt() 功能相比,gflags 功能更加强大,可以将不同的参数定义分散到各个源代码文件中,无需集中管理。提供了以下功能:
前言
gflags 是 Google 提供的一个命令行参数处理的开源库,目前已经独立开源,比传统的 getopt() 功能更加强大,可以将不同的参数定义分布到各个源码文件中,不需要集中管理。
提供了 C++ 和 Python 两个版本,这里仅详细介绍 C++ 版本的使用方式。
简介
配置参数分开还是集中管理没有严格的约束,关键要看项目里的统一规范,只是,gflags 可以支持这两种方式,允许用户更加灵活的使用。
当将参数分布到各个源码文件中时,如果定义了相同的参数,那么在编译的时候会直接报错。
安装
很多发行版本会有自己相关的开发库,这里简单介绍使用 CMake 从源码进行编译,源码可以从 GitHub gflags Releases 中选择相关的版本。
如下命令以最新的 2.2.2 版本为例。

