c++ - php5 - software de php
¿Cómo habilitar C++ 11 en Qt Creator? (6)
Agregue esto a su archivo .pro
QMAKE_CXXFLAGS += -std=c++11
o
CONFIG += c++11
El título es bastante autodescriptivo. Descargué Qt Creator 2.7.0 y estoy intentando compilar algunos códigos básicos de C ++ 11:
int my_array[5] = {1, 2, 3, 4, 5};
for(int &x : my_array)
{
x *= 2;
}
Recibo el siguiente error:
range based for loops are not allowed in c++ 98 mode
Sin embargo, según este artículo, esta versión de Qt Creator admite C ++ 11. Entonces, ¿cómo lo habilito?
Como una alternativa para manejar ambos casos abordados en la excelente respuesta de Ali, generalmente agrego
# With C++11 support
greaterThan(QT_MAJOR_VERSION, 4){
CONFIG += c++11
} else {
QMAKE_CXXFLAGS += -std=c++0x
}
a mis archivos de proyecto Esto puede ser útil cuando en realidad no le importa mucho qué versión de Qt usa la gente de su equipo, pero desea que tenga C ++ 11 habilitado en cualquier caso.
De acuerdo con este sitio, agregue
CONFIG += c++11
a su archivo .pro (ver en la parte inferior de esa página web). Requiere Qt 5.
Las otras respuestas, sugiriendo
QMAKE_CXXFLAGS += -std=c++11
(o QMAKE_CXXFLAGS += -std=c++0x
)
también funciona con Qt 4.8 y gcc / clang.
El único lugar donde he logrado que funcione correctamente es buscando en ... / Qt / {5.9; o su versión} / mingw {53_32; o su versión} / mkspecs / win32-g ++ / qmake.conf:
Luego en la línea: QMAKE_CFLAGS + = -fno-keep-inline-dllexport
Editar: QMAKE_CFLAGS + = -fno-keep-inline-dllexport -std = c ++ 11
¡Los efectos son inmediatos! :)
Si está utilizando una versión anterior de QT (<5) intente esto
QMAKE_CXXFLAGS += -std=c++0x
agregar a su archivo qmake
QMAKE_CXXFLAGS+= -std=c++11
QMAKE_LFLAGS += -std=c++11