boost解析argv
2016-04-10 21:52
246 查看
#include<boost/program_options.hpp> namespacepo=boost::program_options; boolparse_command_line(intargc,char*argv[],po::variables_map&vm){ po::options_descriptiondesc("Allowedoptions"); desc.add_options() ("help","producehelpmessage") ("a",po::value<std::string>()->required(),"providethedatabasedir") ("b",po::value<std::string>()->required(),"destdirforsavefinalkv") ("c",po::value<int>()->required(),"providewhichframetostartwith");try{ po::store(po::parse_command_line(argc,argv,desc),vm); if(vm.count("help")){ std::cerr<<desc<<std::endl; returnfalse; } po::notify(vm); }catch(std::exception&e){ std::cerr<<"Error:"<<e.what()<<"\n"; returnfalse; }catch(...){ std::cerr<<"Unknownerror!"<<"\n"; returnfalse; } returntrue; }
相关文章推荐
- 20145310 《Java程序设计》第6周学习总结
- 冒泡,选择,插入,快速排序在Java中的实现
- OpenGL超级宝典笔记----框架搭建
- Mac 上编译 ffmpeg 方法
- 从头到位打印链表
- 递归小结
- Python中strip(),lstrip(), rstrip()使用方法
- hihocoder 1290:Demo Day
- 静态成员
- 应用层常见的协议及对应的端口号
- 网页三
- C++primer 练习12.27
- MyEclipse6.5上配置Tomcat7
- linux man
- 第七周:可执行程序的装载
- K-近邻算法
- C++中new和malloc的区别
- HDU2043
- 西邮Linux兴趣小组2016免试题
- 欢迎使用CSDN-markdown编辑器