6 votos

¿Cómo puedo especificar la versión de C++ a utilizar con Xcode?

En la línea de comandos puedo utilizar clang -std=c++98 -pedantic-errors lo que me impedirá utilizar las características de las nuevas versiones de C++.

¿Cómo puedo conseguir lo mismo con Xcode?

EDITAR : Código de ejemplo

#include <iostream>

int main(int argc, const char * argv[]) {
    int arr[] = {1,2,3,4,5};
    for(int& e : arr) {
        std::cout << e * e;
    }
    return 0;
}

Este es mi comportamiento deseado.

$ clang -std=gnu++98 main.cpp -pedantic-errors
main.cpp:5:16: error: range-based for loop is a C++11 extension [-Werror,-Wc++11-extensions]
    for(int& e : arr) {
               ^
1 error generated.

Pero al ejecutar Xcode con el conjunto de herramientas c++98 no da error.

EDITAR 2 : He encontrado un interruptor para que avise, pero Xcode no da error. xcode disable c++11 extensions

EDITAR 3: He encontrado otro interruptor para hacer errores de advertencia warnings to errors

6voto

hjdm Puntos 18

Haga clic en un archivo de proyecto, luego en Build Settings y busque C++ Language Dialect.

C++ Language Dialect in Xcode

Utilice esto para obtener un error:

enter image description here

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X