本文整理汇总了C++中alib::CommandLine::FlagCount方法的典型用法代码示例。如果您正苦于以下问题:C++ CommandLine::FlagCount方法的具体用法?C++ CommandLine::FlagCount怎么用?C++ CommandLine::FlagCount使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类alib::CommandLine
的用法示例。
在下文中一共展示了CommandLine::FlagCount方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: cl
void SQLCommand :: BuildCols( const ALib::CommandLine & cmd,
const string & flag,
SQLColSpec::Vec & cols ) {
bool havenames = false;
cols.clear();
if ( cmd.FlagCount( flag ) > 1 ) {
CSVTHROW( "Need fields specified by single " << flag << " flag" );
}
ALib::CommaList cl( cmd.GetValue( flag ) );
for ( unsigned int i = 0; i < cl.Size(); i++ ) {
vector <string> tmp;
if ( ALib::Split( cl.At(i), ':', tmp ) > 2 ) {
CSVTHROW( "Invalid column specification: " << cl.At(i) );
}
if ( tmp.size() == 0 ) {
CSVTHROW( "Empty column specification" );
}
if ( ! ALib::IsInteger( tmp[0] ) ) {
CSVTHROW( "Field index must be integer in " << cl.At(i) );
}
int icol = ALib::ToInteger( tmp[0] );
if ( icol <= 0 ) {
CSVTHROW( "Field index must be greater than xero in " << cl.At(i) );
}
if ( tmp.size() == 1 && havenames ) {
CSVTHROW( "Must specify all column names" );
}
havenames = havenames || tmp.size() == 2;
string colname = tmp.size() == 2 ? tmp[1] : string("");
cols.push_back( SQLColSpec( icol - 1, colname ) );
}
}