本文整理汇总了C++中StringParser::pos方法的典型用法代码示例。如果您正苦于以下问题:C++ StringParser::pos方法的具体用法?C++ StringParser::pos怎么用?C++ StringParser::pos使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类StringParser
的用法示例。
在下文中一共展示了StringParser::pos方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: parse
void parse (StringParser& p, std::complex<F>& out) {
size_t start = p.pos ();
F real, imag;
parse (p, real);
size_t pos = p.pos ();
p.skipWs ();
size_t pos2 = p.pos ();
char sign = p.read ();
if (sign == '+' || sign == '-') {
p.skipWs ();
if (p.peek () == 'i' || p.peek () == 'I') {
p.read ();
imag = sign == '+' ? 1 : -1;
} else {
p.seek (pos2);
parse (p, imag);
p.skipWs ();
char c = p.read ();
if (c != 'i' && c != 'I') {
throw ParseException (typeid (std::complex<F>), p.value (), start, p.pos () - 1, "Expected `i' oder `I' after imaginary part");
}
}
out = std::complex<F> (real, imag);
} else {
p.seek (pos);
out = std::complex<F> (real, 0);
}
}