Подтвердить что ты не робот

Отсутствует std:: runtime_error в qt + mingw

Я попытался скомпилировать следующий код с помощью Qt (4.6.3) + MinGW:

#include <QtCore/QCoreApplication>
#include <exception>

int main(int argc, char *argv[])
{
    throw std::runtime_error("");

    QCoreApplication a(argc, argv);

    return a.exec();
}

... и получил эту ошибку:

..\untitled11\main.cpp:6: error: 'runtime_error' is not a member of 'std'

Проект создан с нуля (консольное приложение), файл pro:

QT       += core

QT       -= gui

TARGET = untitled11
CONFIG   += console
CONFIG   -= app_bundle

TEMPLATE = app

SOURCES += main.cpp

Пробовал компилировать это с помощью компилятора Qt + MSVC2008 - отлично работает.

Это стандартное исключение, понятия не имею, почему отсутствует.

4b9b3361

Ответ 1

<exception> определяет только базовый класс std::exception; если вам нужны дочерние классы типа std::runtime_error, вы должны включить заголовок <stdexcept>.