当前位置: 首页 > ops >正文

gflags框架安装与使用

gflags框架安装

sudo apt-get install libgflags-dev

gflags框架的使用

main

#include <gflags/gflags.h>
#include<iostream>
//定义参数
DEFINE_string(ip,"127.0.0.1","这是服务器的ip地址,格式为127.0.0.1");
DEFINE_int32(port,8080,"这是服务器的端口号,格式是8080");
DEFINE_bool(debug_enable,true,"是否启动debug模式,格式是:true/false");int main(int argc,char*argv[])
{//要想通过解析命令行参数来设置到定义的变量中,需要告诉可执行程序去处理解析命令行传入的参数google::ParseCommandLineFlags(&argc, &argv, true); //上面的定义的参数名称并不是真正的全局变量,gflags内部会将名字前面统一添加FLAGS_std::cout<<FLAGS_ip<<std::endl;std::cout<<FLAGS_port<<std::endl;std::cout<<FLAGS_debug_enable<<std::endl;return 0;
}

makefile

main: main.ccg++ -std=c++17 $^ -o$@ -lgflags -lspdlog -lpthread

编译运行:
在这里插入图片描述
通过命令行参数来代替内部变量
在这里插入图片描述
通过定义并导入配置文件,来代替内部变量
main.conf
在这里插入图片描述
在这里插入图片描述

http://www.xdnf.cn/news/18036.html

相关文章:

  • [激光原理与应用-296]:理论 - 非线性光学 - 线性光学与非线性光学对比
  • 《亚矩阵云手机重构出租接单:KVM 虚拟化与边缘计算驱动的设备替代技术路径》
  • leetcode43. 字符串相乘
  • 06.文件权限管理
  • 从 UI 角度剖析蔬菜批发小程序的设计之道——仙盟创梦IDE
  • Nextcloud容器化部署革新:Docker+Cpolar构建高效私有云远程访问新架构
  • 构建经典PyTorch框架卷积神经网络参数demo
  • Python 调试工具的高级用法
  • 原子指标、派生指标和复合指标
  • 【IDEA】设置Debug调试时调试器不进入特定类(Spring框架、Mybatis框架)
  • 项目发布上线清单
  • 数据链路层(2)
  • JavaScript 性能优化实战大纲
  • Go语言企业级权限管理系统设计与实现
  • Pulsar存储计算分离架构设计之存储层BookKeeper(上)
  • 【165页PPT】锂电池行业SAP解决方案(附下载方式)
  • 2024年08月13日 Go生态洞察:Go 1.23 发布与全面深度解读
  • 海洋牧场:引领渔业从传统到现代的华丽跨越
  • 【LeetCode】10. 正则表达式匹配
  • [GLM-4.5] LLM推理服务器(SGLang/vLLM) | 工具与推理解析器
  • 云计算-k8s实战指南:从 ServiceMesh 服务网格、流量管理、limitrange管理、亲和性、环境变量到RBAC管理全流程
  • Tomcat Endpoint的核心概念和实现细节
  • Meteodyn WT 6.7(Meteodyn)风力资源评估及微观选址软件工具
  • Unity进阶--C#补充知识点--【Unity跨平台的原理】了解.Net
  • 积鼎科技CFD VirtualFlow:引领国产多相流仿真技术,赋能工业智造
  • UE5多人MOBA+GAS 49、创建大厅
  • 数据结构:二叉树的高度 (Height)和节点总数 (Count of Nodes)
  • 第 463 场周赛(GPT-3,Me-1)
  • 【C#补全计划】多线程
  • Agent开发进阶路线:从基础响应到自主决策的架构演进