webentwicklung-frage-antwort-db.com.de

Wie aktiviere ich C ++ 17 in Xcode für Mac OSX?

Wie aktiviere ich C++ 17 in Xcode (9.4.1) unter OSX High Sierra (10.13.5)?

11
claytonjwong

Schritte zur Verwendung von C++ 17 in Xcode (9.4.1) unter OSX High Sierra (10.13.5):

  1. Öffne ein bestehendes oder erstelle ein neues C++ Projekt in Xcode
  2. Klicken Sie auf die Schaltfläche "Projektnavigator anzeigen". Es befindet sich im oberen linken Bereich des Xcode-Fensters direkt unter den Schaltflächen zum Minimieren/Maximieren/Schließen des Fensters. Es ist das Symbol ganz links und sieht aus wie ein Ordner.
  3. Klicken Sie auf "Build Settings" und scrollen Sie nach unten, um den Abschnitt "Apple LLVM 9.0 - Language - C++" zu finden und zu erweitern.
  4. Ändern Sie die C++ - Sprachdialekt-Auswahl in "C++ 17 [-std = c ++ 17]".

Xcode Build Settings

Überprüfungsschritte:

Wenn ich jetzt __cplusplus ausgebe, sehe ich 201703 und kann C++ 17-Funktionen kompilieren, z. B. constexpr.

template<class T>
int compute(T x) {
    if constexpr( supportsAPI(T{}) ) {
        // only gets compiled if the condition is true
        return x.Method();
    } else {
        return 0;
    }
}

int main(){
    cout << __cplusplus << endl;
    return 0;
}

Ausgabe:

201703
Program ended with exit code: 0
16
claytonjwong