ACE_Get_Opt命令行选项
来源:互联网 发布:public static java 编辑:程序博客网 时间:2024/05/06 13:55
#include "ace/Message_Queue.h"
#include "ace/OS.h"
#include "ace/Log_Msg.h"
#include "ace/Get_Opt.h"
#include <iostream>
#include <fstream>
#define ACE_NDEBUG 0
using namespace std;
int ACE_TMAIN(int argc, ACE_TCHAR * argv[])
{
const ACE_TCHAR options[] = "f:F:s:S:vVhHdD" ;
int opt=0;
ACE_Get_Opt cmd_opts(argc, argv, options);
cmd_opts.long_option(ACE_TEXT("config"),'f',ACE_Get_Opt::ARG_REQUIRED);//长参数关联到短参数
cmd_opts.long_option(ACE_TEXT("segment"),'s',ACE_Get_Opt::ARG_REQUIRED);
cmd_opts.long_option(ACE_TEXT("CONFIG") ,'f',ACE_Get_Opt::ARG_REQUIRED);
cmd_opts.long_option(ACE_TEXT("SEGMENT"),'s',ACE_Get_Opt::ARG_REQUIRED);
ACE_LOG_MSG->priority_mask( LM_DEBUG | LM_INFO , ACE_Log_Msg::PROCESS );//设置日志级别
while((opt = cmd_opts()) != EOF)
{
switch(opt)
{
case 'f':
case 'F':
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT("File: -fF[%d]:%s\n"),cmd_opts.opt_ind(), cmd_opts.opt_arg()) );
}
break;
case 's':
case 'S':
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT("Segment: -sS[%d]:%s\n"), cmd_opts.opt_ind(), cmd_opts.opt_arg()));
}
break;
case 'v':
case 'V':
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT("Version: -vV[%d]: %s\n"),cmd_opts.opt_ind(), cmd_opts.opt_arg()));
}
break;
case 'h':
case 'H':
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT( "Help: -hH[%d]: %s\n" ),cmd_opts.opt_ind(), cmd_opts.opt_arg()));
}
break;
default :
{
if(NULL == cmd_opts.opt_arg())
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT( "UnKnown option[%d]\n"),cmd_opts.opt_ind()));
}
else
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT( "UnKnown option[%d]: %s\n"),cmd_opts.opt_ind(), cmd_opts.opt_arg()));
}
}
}
}
return 0;
#include "ace/OS.h"
#include "ace/Log_Msg.h"
#include "ace/Get_Opt.h"
#include <iostream>
#include <fstream>
#define ACE_NDEBUG 0
using namespace std;
int ACE_TMAIN(int argc, ACE_TCHAR * argv[])
{
const ACE_TCHAR options[] = "f:F:s:S:vVhHdD" ;
int opt=0;
ACE_Get_Opt cmd_opts(argc, argv, options);
cmd_opts.long_option(ACE_TEXT("config"),'f',ACE_Get_Opt::ARG_REQUIRED);//长参数关联到短参数
cmd_opts.long_option(ACE_TEXT("segment"),'s',ACE_Get_Opt::ARG_REQUIRED);
cmd_opts.long_option(ACE_TEXT("CONFIG") ,'f',ACE_Get_Opt::ARG_REQUIRED);
cmd_opts.long_option(ACE_TEXT("SEGMENT"),'s',ACE_Get_Opt::ARG_REQUIRED);
ACE_LOG_MSG->priority_mask( LM_DEBUG | LM_INFO , ACE_Log_Msg::PROCESS );//设置日志级别
while((opt = cmd_opts()) != EOF)
{
switch(opt)
{
case 'f':
case 'F':
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT("File: -fF[%d]:%s\n"),cmd_opts.opt_ind(), cmd_opts.opt_arg()) );
}
break;
case 's':
case 'S':
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT("Segment: -sS[%d]:%s\n"), cmd_opts.opt_ind(), cmd_opts.opt_arg()));
}
break;
case 'v':
case 'V':
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT("Version: -vV[%d]: %s\n"),cmd_opts.opt_ind(), cmd_opts.opt_arg()));
}
break;
case 'h':
case 'H':
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT( "Help: -hH[%d]: %s\n" ),cmd_opts.opt_ind(), cmd_opts.opt_arg()));
}
break;
default :
{
if(NULL == cmd_opts.opt_arg())
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT( "UnKnown option[%d]\n"),cmd_opts.opt_ind()));
}
else
{
ACE_DEBUG((LM_DEBUG, ACE_TEXT( "UnKnown option[%d]: %s\n"),cmd_opts.opt_ind(), cmd_opts.opt_arg()));
}
}
}
}
return 0;
}
###############################################
运行:
ace_tst --segment sss 等价于如下参数 ace_tst -s sss
0 0
- ACE_Get_Opt命令行选项
- ACE_Get_Opt解析命令行参数
- ACE_Get_Opt解析命令行
- 使用ACE_Get_Opt解析命令行
- ACE处理命令行参数:ACE_Get_OPt
- 解析命令行参数-ACE_Get_Opt类的用法
- 命令行选项
- 命令行选项
- 命令行选项
- Main():处理命令行选项
- Ant命令行选项
- ruby的命令行选项
- C#命令行编译器选项
- linux命令行选项
- linux命令行选项
- linux命令行选项
- hive cli命令行选项
- make的命令行选项
- 102奇偶调序
- 数据结构_输出二叉树中先序、中序、后序遍历方式中第k个节点的数据
- 程序员要学点儿理财知识,而不仅仅是代码技巧
- <广度优先搜素 BFS>和<深度优先搜索 DFS>
- sql简单语法练习
- ACE_Get_Opt命令行选项
- C++中取得各种简单数值类型的最大最小值
- Remove Nth Node From End of List
- 关于数据结构方面内容的简单回顾整理
- 模板函数冲突
- EL表达式字符串相关函数
- 如何优雅的研究 RGSS3 (五) 输入数字的画面
- poj 2528(线段树区间更新)
- 最短路径--Dijkstra算法原理分析