【C++】istream类型对象转换为逻辑条件判断值

2024-01-28 10:04:14 浏览数 (2)

前言 大家好吖,欢迎来到 YY 滴 系列 ,热烈欢迎! 本章主要内容面向接触过C 的老铁

  • PS:这里的explicit反而和常规用法不一样,反而是扩大了重载的权限(了解杰克)

  • 我们观察下面代码:
  • 实际上我们看到使用while(cin>>i)去流中提取对象数据时,调用的是operator>>,返回值是istream类型的对象,那么这里可以做逻辑条件值,源自于istream的对象又调用了operator bool,operator bool调用时如果接收流失败,或者有结束标志,则返回false。
代码语言:javascript复制
int main()
{
	int a, b;
	while (cin>>a>>b)  // cin.operator>>(a).operator>>(b).operator bool()
	{
		cout << a << endl;
		cout << b << endl;
	}

	return 0;
}

0 人点赞