Есть ли возможность контроллировать статус выполнения операций вывода в С++ без try
- catch
блоков?
Я выполняю команду cout<<"Smthng"
и хочу программно узнать, была ли эта операция успешной. То есть мне надо что-то типа Паскалевского IOResult
, или какой-то вариации GetLastError()
. Думал, что есть такое поле в ios
, но там только типы для отлова исключений.
По умолчанию как раз операции с потоками исключений не генерируют. Так что можете просто проверять, как закончилась предыдущая операция - либо, например, if (cout.good())
, либо пользуясь приведением к типу bool
просто как if (cout)
. А поскольку операции ввода-вывода обычно возвращают ссылку на поток, то даже так:
if (cout << "Hello") ...
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
С чего следует начать подготовку у ACM? И какие ресурсы вы рекомендуете?
Отсортировать вектор по одному из полей, используя алгоритмы STLПо возможности использовать все перегрузки сортировки (фраза, которую я не понял)