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

dw做响应式网站中山市建设工程 交易中心网站

dw做响应式网站,中山市建设工程 交易中心网站,可信网站认证是否必须做,网站制作项目gflags介绍gflags库用于命令行参数的声明、定义和解析,使我们能够灵活配置程序的运行效果。例如,在服务端程序开发中,我们可以通过命令行自定义IP地址和端口号,而无需修改代码。又如,我们可以用gflags的宏定义一个“是…

gflags介绍

gflags库用于命令行参数的声明、定义和解析,使我们能够灵活配置程序的运行效果。例如,在服务端程序开发中,我们可以通过命令行自定义IP地址和端口号,而无需修改代码。又如,我们可以用gflags的宏定义一个“是否打印调试信息”的参数,默认值为false(不打印),如果需要打印调试信息,只需在命令行中将该参数设置为true即可。

gflags安装

dev@dev-host:~/workspace/gflags$ sudo apt-get install libgflags-dev

查看是否安装成功

$ ls /usr/include/gflags/
gflags_completions.h  gflags_declare.h  gflags_gflags.h  gflags.h
$ whereis libgflags.so
libgflags.so: /usr/lib/x86_64-linux-gnu/libgflags.so

gflags使用

1.包含头文件#include<gflags/gflags.h>
2.定义参数(启动程序时可以用命令行指定它们,不用改代码就能控制程序行为)
DEFINE_type(参数名, 默认值, 说明参数);
type支持bool、int32、int64、uint64、double
说明参数可用./your_program --help查看
3. 访问参数
在程序中使用FLAGS_前缀就能访问标志,即命令行参数,用gflags的宏定义的参数
4.不同文件访问参数
宏声明DECLARE_bool(标志),能访问另一个文件中的参数
5.解析所有参数(让所有定义的参数被正确赋值)
google::ParseCommandLineFlags(&argc, &argv, true);
6.运行参数设置
—str_format=“xxx”
—num_format=10
—bool_format or —nobool_format
7.配置文件使用
—flagfile=f,从文件f中读取命令行参数

Demo1(默认值、命令行传标志、从文件读参)

用 gflags 定义并解析命令行参数(IP、端口、调试开关),然后打印它们的值。用户可以通过命令行(如 --ip=192.168.1.1)修改默认值
main.conf

--ip="192.168.2.3"
--port=10001
--debug_enable=true

makefile

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

main.cc

#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, "是否启用调试模式, 格式:true/false");int main(int argc, char *argv[])
{google::ParseCommandLineFlags(&argc, &argv, true);std::cout << FLAGS_ip << std::endl;std::cout << FLAGS_port << std::endl;std::cout << FLAGS_debug_enable << std::endl;return 0;
}

运行代码1(打印默认值)
./main
127.0.0.1
8080
1

运行代码2(打印传入值)
./main --ip="192.168.0.1" --port=9090 --nodebug_enable
192.168.1.0
9090
0

运行代码3
./main --flagfile="./main.conf"
"192.168.2.3"
10001
1

Demo2(用另一个文件里定义的标志)

在 flags_def.cc 定义 --port 参数,在 main.cc 中声明并使用它,实现跨文件共享命令行参数
flags_def.cc

#include <gflags/gflags.h>
DEFINE_int32(port, 8080, "Port number to listen on");

main.cc

#include <gflags/gflags.h>
#include <iostream>DECLARE_int32(port); //声明int main(int argc, char *argv[])
{google::ParseCommandLineFlags(&argc, &argv, true);std::cout << FLAGS_port << std::endl;return 0;
}

编译时链接两个文件一起:
g++ main.cc flags_def.cc -lgflags -o main

运行代码1 (打印默认值)
./main
8080               

运行代码2(打印传入值)
./main --port=1234
1234               

http://www.dtcms.com/a/566959.html

相关文章:

  • 网站被墙了什么意思无法打开建设银行企业网站
  • vue3 css使用v-bind实现动态样式
  • wordpress拖动建站装修设计效果图制作
  • 曹妃甸建设工程招投标网站wordpress 页面管理
  • wpsppt网站链接怎么做网站开发选什么职位
  • 【java基础语法】------ 数组
  • 如何使用vite快速搭建一个vue3的项目?
  • 网站长期建设 运营计划网站升级改版需要几天
  • 网站没有织梦后台企业网站程序
  • 中企动力建的网站如何展览馆网站建设
  • 网站优怎么做怎样弄微信公众号
  • 网站开发语言学习wordpress要求配置
  • 网站建设黄荣新手如何自学编程
  • 网站备案信息开发公司工程部岗位职责
  • 鄱阳县建设局网站凯盛建设公司网站
  • 网站免费推广方法可以做网站的域名后缀
  • pr效果做的好的网站有哪些长洲网站建设
  • 2025年SEVC SCI2区,具有互补和集成变异策略的双阶段自适应差分进化算法用于求解全局优化问题,深度解析+性能实测
  • Ax=b超静定方程组,已知初始解x0情况下得快速解法
  • 做淘宝客网站备案要怎么写广西响应式网站哪家好
  • 公司外贸网站建设什么网站做视频最赚钱
  • 新媒体 网站建设 管理规范百度推广退款电话
  • 关于dw做网站云服务器网站搭建教程
  • 大学生创业服务网站建设方案项目书江苏华江建设集团有限公司网站
  • 宠物医院网站建设wordpress 存储位置
  • 移动办公型网站开发网络营销推广的ppt
  • 建网站的专业公司怎么利用代码做网站
  • 站长工具海角推广平台的方式有哪些
  • 网站备案ip镇江市网站建设设计
  • 高端做网站多少钱内链好的网站