#c #visual-studio-code
#c #visual-studio-code
Вопрос:
В заголовочном файле у меня есть iostream include и decalred объект ostream, как показано ниже
ostream amp;oustream;
В cpp-файле:
if(**oustream != cout**) // this line not working
error:binary '!=': no operator found which takes a left-hand operand of type 'std::ostream' (or there is no acceptable conversion)
Эти программы отлично работают с vs2010 complier и были проблемой с vs2017.
Комментарии:
1. Стандарт
std::ostream
не сопоставим. В вашем старом компиляторе это было либо как расширение, либо как ошибка, но оно не переносимо. Если вы в отчаянии, вы можете сравнить адреса, но если вы пытаетесь определить, выводится ли вывод на терминал, стандартного способа сделать это нет.2. Сравнение адресов работает так же, как и раньше? . Пример программы работал, но касался того факта, что ранее мы сравнивали идентичность, а теперь сравниваем равенство объектов.