Gflags安装和使用

1.安装

1.1 下载

git clone https://github.com/gflags/gflags

1.2 编译

mkdir build
cd build
cmake -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DINSTALL_HEADERS=ON -DINSTALL_SHARED_LIBS=ON -DINSTALL_STATIC_LIBS=ON ..
make -j10
sudo make install

CMakeList.txt中默认编译gflags为静态库,若想实现编译出动态库,需要设置
-DINSTALL_SHARED_LIBS=ON

2.使用

2.1 CMakeList.txt

find_package (gflags REQUIRED)
include_directories (${gflags_INCLUDE_DIR})
target_link_libraries (foo gflags)

2.2 一个例子

#include 
#include 
#include 
#include 
#include 
using namespace std;
using namespace google;

DEFINE_int32(port, 6379, "what is the port ?");//port
int main(int argc, char** argv)
{
    ParseCommandLineFlags(&argc, &argv, true);
    cout << FLAGS_port << endl;//参数被定义后,可以通过FLAGS_name来访问,比如 FLAGS_port
    return 0;
}

命令:
Gflags安装和使用_第1张图片

2.3其他数据类型

DEFINE_bool: boolean
DEFINE_int32: 32-bit integer
DEFINE_int64: 64-bit integer
DEFINE_uint64: unsigned 64-bit integer
DEFINE_double: double
DEFINE_string: C++ string

你可能感兴趣的:(c++,算法,数据结构)