2016-06-13 14 views
2

Ich verwende Qt, um eine Desktop-Anwendung zu schreiben, die eine externe Bibliothek enthält. Das Problem ist, dass ich einen Fehler, wenn einschließlich der externen Bibliothek:C++, Qt: Variable namens "slots" in enthaltene externe Bibliothek

.../sc_containers.h:667: error: expected unqualified-id before ';' token 
    sc_array_t   *slots; 
          ^

ich vor die gleiche Bibliothek in einem nicht-qt Projekt erfolgreich aufgenommen, so nehme ich an, dass dieser Fehler auf die Tatsache zusammenhängt, dass Qt verwendet slots als spezielles Schlüsselwort (siehe here in der Qt-Dokumentation).

Gibt es eine Möglichkeit, dass ich diese externe Bibliothek in meinem Programm verwenden kann? Da dies nicht meine eigene Bibliothek ist, ist das Ändern des Variablennamens in etwas anderes nicht wirklich eine Option.

Vielen Dank im Voraus!

Antwort

9

Hinzufügen QT_NO_KEYWORDS() Definition Ihrer Build wird Qt verhindern, dass die Definition foreach, signals, slots, die mit einem anderen Rahmen kollidieren können.

Verwandte Antwort:

Verwandte doc:

+2

Alternative Möglichkeit: 'CONFIG + = no_keywords' in der .pro-Datei. – peppe

+0

@peppe yup, das ist in der verknüpften Antwort erwähnt – alediaferia

Verwandte Themen