【发布时间】:2014-03-09 21:55:46
【问题描述】:
我从this article 获得了一个sn-p 代码,但我不知道它是如何工作的? sn-p 开头说:
您可以通过测试读取结果来检测特定的读取或写入操作是否失败。例如,要检查是否从用户那里读取了一个有效的整数,您可以这样做:
int x;
if ( cin >> x )
{
cout << "Please enter a valid number" << endl;
}
这是有效的,因为读取操作会返回对流的引用。
我知道 cin >> x 操作返回对 cin 的引用,但我仍然对评估对标准输入流对象的引用如何允许您检查输入是否为有效整数感到困惑。
【问题讨论】:
-
我不确定代码是否符合它所声称的...
if条件是否被否定?应该是吗? -
@DavidRodríguez-dribeas 是的,应该是。这是文章作者的错误。
标签: c++ casting operator-overloading iostream