2017-03-27 1 views
0

cin >>을 조건으로 사용할 수 있음을 안다. 그러나 나는 그것의 기능을 이해할 수 없다. 왜냐하면 전형적인 조건 표현 인 a < b과 다르기 때문이다. 왜 그것이 조건으로 작동 할 수 있습니까?"cin >>"이 (가) 조건으로 사용되는 이유

+0

'std :: iostream :: operator >>'는 값을 반환합니다. 값은 조건에서 사용될 수 있습니다. – jamesdlin

+0

보다 정확하게는 : 부울로 변환 가능한 값은 조건에서 사용될 수 있습니다. – user2079303

답변

2

cin >> a return cin. if에 넣으면 operator boolistream이고, 이는 cin.good()입니다. The documentation of ios::operator bool을보세요.

이것은 if((bool)(cin >> a)) 또는 if((cin >> a).good())과 동일합니다.