I thought that:
if (true)
{execute this statement}
So how does if (std::cin >> X)
execute as true when there is nothing "true" about it? I could understand if it was if ( x <= y)
or if ( y [operator] x )
, but what kind of logic is "istream = true?".