keyword interface
-
hallo leute
ist 'interface' ein c++ keyword ?
ich weiß das MS VC __interface als eignes keyword hat, aber interface ?
hab nen source bekommen, den ich bei mir einbinden wollte, der hat jedoch einen namespace 'interface' wo pure virtual classes definiert sind.
VC2015 gibt mir da aber beim kompilierenerror C2059: Syntaxfehler: "<class-head>"
aus.
Meep Meep
-
Nein ist kein Keyword und mein VS2015 nimmt es als Name für ein Namespace. Möglicherweise irgendein Header wo auch irgendwas interface heißt? Kannst du ein Minimalbeispiel posten?
-
#include <Windows.h> namespace interface { int quad(int i) { return i*i; } } auto WINAPI WinMain(HINSTANCE, HINSTANCE, char*, int) -> int { interface::quad(2); return 0; }
-
Das Problem kommt durch den
Windows.h
Header. In derBaseTyps.h
steht folgendes:#define __STRUCT__ struct #define interface __STRUCT__
Ich hab aber noch nicht rausgefunden wie der Header geladen wird und ob man das irgendwie loswerden kann. Zur Not ein
#undef
.
-
Ein
#define WIN32_LEAN_AND_MEAN
vor dem Include vonWindows.h
scheint zu schon reichen.
-
hmm
bei mir kann ich ueber das kontextmenu nicht auf die definition springen wenn ich interface anklicke. dachte daher das es ein eingebautes keyword von VC ist.
MS und die verdammten #defines gehen mir tierisch auf die nerven