В C++ можно ли вручную установить failbit потока? Как?

Кроссплатформенный путь:

var area = document.getElementById("area");             
var lines = area.value.replace(/\r\n/g,"\n").split("\n");
22
задан Jared 28 October 2009 в 22:40
поделиться

1 ответ

Да, вы можете установить его с помощью ios :: setstate , например так:

#include <iostream>
#include <ios>

int main()
   {
   std::cout << "Hi\n";

   std::cout.setstate(std::ios::failbit);

   std::cout << "Fail!\n";
   }

Второй вывод не будет создан, потому что cout в состоянии отказа.

(Исключение мне кажется более чистым, но YMMV)

28
ответ дан 29 November 2019 в 05:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: