Qt,QTextStream - 将一个字符串/字符串输入到int中

时间:2016-07-27 15:27:09

标签: c++ qt qtextstream

考虑以下计划:

int num;

QTextStream(stdin) >> num;

QTextStream(stdout) << num;

像这样,如果我错误地将字符串或字符串输入到变量num中,默认情况下其值将变为0。

如何更改QTextStream的行为,以便为不正确的输入存储不同的值?例如,-1?

1 个答案:

答案 0 :(得分:2)

您无法更改此行为,但可以QTextStream::status()检查QTextStream::ReadCorruptData

int num;

QTextStream input(stdin);
input >> num;

if (input.status() == QTextStream::ReadCorruptData)
    num = -1;

QTextStream(stdout) << num;