我有一个 xsd 文件,我想在属于它的 xml 上迭代抛出一个特殊属性(这是我的 xsd)。通过代码合成创建我的类后,如下所示:
xsdcxx cxx-tree --root-element percolator_output --generate-polymorphic --namespace-map http://per-colator.com/percolator_out/14=xsd pout.xsd
我写了我的主要内容:
int main (int argc, char* argv[])
{
try
{
auto_ptr<percolator_output> h (percolator_output_ (argv[1]));
//-----percolator_output::peptides_optional& pep (h->peptides ());
for (peptides::peptide_const_iterator i (h->peptides ().begin ()); i != h->peptides ().end (); ++i)
{
cerr << *i << endl;
}
}
catch (const xml_schema::exception& e)
{
cerr << e << endl;
return 1;
}
}
我想在我的 xml 文件中迭代 throw 属性“peptides”,但它的输出h->peptides ()
是percolator_output::peptides_optional
并且它不是可迭代的。