本文整理汇总了C++中Args::Argv方法的典型用法代码示例。如果您正苦于以下问题:C++ Args::Argv方法的具体用法?C++ Args::Argv怎么用?C++ Args::Argv使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Args
的用法示例。
在下文中一共展示了Args::Argv方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CompleteArgument
CompletionResult CompleteArgument(const Args& args, int argNum) {
CommandMap& commands = GetCommandMap();
commandLog.Debug("Completing argument %i of '%s'", argNum, args.ConcatArgs(0));
if (args.Argc() == 0) {
return {};
}
if (argNum > 0) {
const std::string& cmdName = args.Argv(0);
auto it = commands.find(cmdName);
if (it == commands.end()) {
return {};
}
std::string prefix;
if (argNum < args.Argc()) {
prefix = args.Argv(argNum);
}
return it->second.cmd->Complete(argNum, args, prefix);
} else {
return CompleteCommandNames(args.Argv(0));
}
}
示例2: PrintUsage
void CmdBase::PrintUsage(const Args& args, Str::StringRef syntax, Str::StringRef description) const {
if(description.empty()) {
Print("%s: %s %s", _("usage"), args.Argv(0).c_str(), syntax.c_str());
} else {
Print("%s: %s %s — %s", _("usage"), args.Argv(0).c_str(), syntax.c_str(), description.c_str());
}
}