本文整理汇总了C++中ConfigSection::getNbOptions方法的典型用法代码示例。如果您正苦于以下问题:C++ ConfigSection::getNbOptions方法的具体用法?C++ ConfigSection::getNbOptions怎么用?C++ ConfigSection::getNbOptions使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ConfigSection
的用法示例。
在下文中一共展示了ConfigSection::getNbOptions方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: try_save_config
bool try_save_config(const string& fname, GLEInterface* iface, bool isUser) {
ConfigCollection* collection = iface->getConfig()->getRCFile();
if (collection->allDefaults()) {
return true;
}
if (fname == "") {
return false;
}
if (IsAbsPath(fname)) {
std::string dirname;
GetDirName(fname, dirname);
EnsureMkDir(dirname);
}
ofstream fout(fname.c_str());
if (!fout.is_open()) {
return false;
}
CmdLineOption* versionOption = collection->getSection(GLE_CONFIG_GLE)->getOption(GLE_CONFIG_GLE_VERSION);
ostringstream out;
out << "Save configuration to: '" << fname << "'";
GLEOutputStream* output = iface->getOutput();
output->println(out.str().c_str());
for (int i = 0; i < collection->getNbSections(); i++) {
ConfigSection* sec = collection->getSection(i);
if (!sec->allDefaults()) {
fout << "begin config " << sec->getName() << endl;
for (int j = 0; j < sec->getNbOptions(); j++) {
CmdLineOption* option = sec->getOption(j);
if (!option->allDefaults() && (!isUser || option != versionOption)) {
fout << "\t" << option->getName() << " = ";
for (int k = 0; k < option->getMaxNbArgs(); k++) {
if (k != 0) fout << " ";
CmdLineOptionArg* arg = option->getArg(k);
arg->write(fout);
}
fout << endl;
}
}
fout << "end config" << endl << endl;
}
}
fout.close();
return true;
}