#include "OptionParser.h"static int aValue = 0;static std::string stringValue;static float fValue = 0;int main(int argc, const char *argv[]){Option option;OptionParser parser;option.init("a"); // 初始化选项,指定名称option.bindVariable(&aValue, Option::Integer); // 绑定变量option.bindCallback( [](Option &option){ printf("option a: %d\n", aValue); } ); // 绑定选项捕获回调函数parser.addOption(option); // 添加选项到解码器option.init("string");option.bindVariable(&stringValue, Option::String);option.bindCallback( [](Option &option){ printf("option string: %s\n", stringValue.c_str()); } );parser.addOption(option);option.init("f");option.bindVariable(&fValue, Option::Float);option.bindCallback( [](Option &option){ printf("option f: %g\n", fValue); } );parser.addOption(option);auto helpCb = [](Option &option){ printf("option help message\n"); };option.init("help");// 帮助信息不需要绑定变量option.bindCallback(helpCb);parser.addOption(option);option.init("h");option.bindCallback(helpCb);parser.addOption(option);bool ret = parser.process(argc, argv); // 解析if (ret == false)printf("option parser failed\n");elseprintf("option parser complite\n");return 0;}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。