на самом простом поймал ошибки, при объявлении std::optional ругается на отсутствие члена optional в пространстве имен. В чем может быть проблема
#include <optional>
int main()
{
std::optional<char> a;
return 0;
}
Подобная ошибка выдается Visual Studio 2017 если в установках проекта не выбран режим C++17 (/std:c++17
). При этом в окне Output
она сопровождается сообщением
class template optional is only available with C++17 or later.
Я подозреваю, что вы разглядываете ошибки компиляции в этом "новом" странном GUI-шном окне Errors
, вместо того, чтобы пойти в нормальное человеческое окно Output
и посмотреть полный вывод компилятора там. По этой причине вы и не увидели вышеупомянутого сообщения.
Две наиболее распространенные причины этого сообщения компилятора могут быть.
Первая причина - компилятор не поддерживает std::optional
.
Вторая причина - вы не включили заголовок <optional>
.
Еще может быть, что вы включили этот заголовок в Visual Studio перед заголовком stdafx.h
.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как в Clion ( OS X 1014) установить стандартный код для cpp
Столкнулся со следующей проблемой- при emit сигнала с параметром в виде QByteArray длины до 3-х байт программа вылетает с фразой unknown signal
Хочу написать программу, которая будет строить треугольник СерпинскогоМне нужно получить координаты первого треугольника, но я не хочу...