Ниже привожу много где мною виденный способ чтентя текстового файла:
std::ifstream f("f:\\temp\\test.txt");
if (!f.is_open() || f.fail())
return false;
std::string s;
while (std::getline (f, s))
std::cout << s << "\n";
Код вполне работает, но меня смущает выделенный фрагмент.
По документации std::getline возвращает basic_istream&.
Я вот не пойму как можно ссылку на объект проверять на неноль в цикле while().
Это же не указатель, да и переопределенного оператора вроде operator bool у basic_istream тоже нету.
Никак не пойму.