Teilen über


Compilerfehler C3100 bis C3199

In den Artikeln in diesem Abschnitt der Dokumentation wird eine Teilmenge der vom Compiler generierten Fehlermeldungen erläutert.

Wichtig

Die Visual Studio-Compiler und -Buildtools können vielen Arten von Fehlern und Warnungen generieren. Nachdem ein Fehler oder eine Warnung erkannt wurde, können die Buildtools Annahmen über den beabsichtigten Zweck des Codes machen, und sie versuchen, den Code weiterhin auszuführen, sodass mehrere Probleme gleichzeitig gemeldet werden können. Wenn die Tools allerdings von falschen Annahmen ausgehen, sind spätere Fehler oder Warnungen möglicherweise nicht auf das Projekt anwendbar. Wenn Sie Probleme im Projekt beheben, sollten Sie immer mit dem ersten gemeldeten Problem (Fehler oder Warnung) beginnen, und häufig einen Rebuild für das Projekt ausführen. Durch eine Fehlerbehebung können möglicherweise viele nachfolgende Fehler behoben werden.

Um Hilfe zu einer bestimmten Diagnosenachricht in Visual Studio zu erhalten, wählen Sie sie im Fenster Ausgabe aus, und drücken Sie die Taste F1. Visual Studio öffnet die Dokumentationsseite für diesen Fehler, sofern vorhanden. Sie können auch das Suchtool oben auf der Seite verwenden, um Artikel zu bestimmten Fehlern oder Warnungen zu finden. Oder durchsuchen Sie die Liste der Fehler und Warnungen nach Tool und Typ im Inhaltsverzeichnis auf dieser Seite.

Hinweis

Nicht jeder Visual Studio-Fehler oder jede Warnung ist dokumentiert. In vielen Fällen sind bereits alle verfügbaren Informationen in der Fehlermeldung enthalten. Wenn Sie diese Seite erreicht haben, nachdem Sie F1 gedrückt haben, und der Ansicht sind, dass die Fehlermeldung oder Warnmeldung zusätzliche Erläuterungen benötigt, teilen Sie uns dies mit. Mithilfe der Feedbackschaltflächen auf dieser Seite können Sie ein Dokumentationsproblem auf GitHub melden. Wenn Sie glauben, dass der Fehler oder die Warnung falsch ist oder Sie ein weiteres Problem mit dem Toolset gefunden haben, melden Sie ein Produktproblem auf der Developer Community-Website. Sie können auch innerhalb der IDE Feedback senden und Fehler eingeben. Wechseln Sie in Visual Studio zur Menüleiste, und wählen Sie Hilfe > Feedback senden > Ein Problem melden aus, oder senden Sie einen Vorschlag über Hilfe > Feedback senden > Vorschlag senden. Es wurden einige Themen zu Compilerfehlern erstellt, die nicht vom Compiler ausgegeben werden und Sie jetzt stattdessen zu dieser Seite umleiten.

In Microsoft Learn Q&A-Foren finden Sie möglicherweise zusätzliche Unterstützung für Fehler und Warnungen. Oder suchen Sie auf der Website der Visual Studio C++-Developer Community nach der Fehler- oder Warnungsnummer. Sie können auch Stack Overflow nach Lösungen durchsuchen.

Links zu zusätzlichen Hilfe- und Communityressourcen finden Sie in der Hilfe und Community für Visual C++.

Fehlermeldungen

Fehler `Message`
Compilerfehler C3100 identifier“: unbekannter Attributqualifizierer
Compilerfehler C3101 Unzulässiger Ausdruck für benanntes Attributargument „identifier
Compilerfehler C3102 Veraltet.
Compilerfehler C3103 identifier“: wiederholtes benanntes Argument
Compilerfehler C3104 Unzulässiges Attributargument
Compilerfehler C3105 symbol“: kann nicht als Attribut verwendet werden.
Compilerfehler C3106 attribute“: Unbenannte Argumente müssen vor benannten Argumenten aufgeführt werden.
Compilerfehler C3107 attribute“: Memberfunktionen systemeigener Attribute können nicht definiert werden.
Compilerfehler C3108 Kann einen Typ nicht herleiten, da eine Initialisiererliste kein Ausdruck ist.
Compilerfehler C3109 identifier“: Schnittstellenmethoden müssen entweder die Aufrufkonvention „__stdcall“ oder „__cdecl“ verwenden.
Compilerfehler C3110 function“: COM-Schnittstellenmethode kann nicht überladen werden.
Compilerfehler C3111 Eine Initialisiererliste kann nicht als Standardargument für einen Vorlagenparameter verwendet werden.
Compilerfehler C3112 interface“: Eine Schnittstelle kann nur im globalen Gültigkeitsbereich oder im Namespace-Gültigkeitsbereich deklariert werden
Compilerfehler C3113 „interface/enum“ kann kein „template/generic“ sein.
Compilerfehler C3114 identifier“ ist kein gültiges benanntes Attributargument.
Compilerfehler C3115 attribut“: Dieses Attribut ist in „construct“ nicht zulässig.
Compilerfehler C3116 specifier“: ungültige Speicherklasse für Schnittstellenmethode
Compilerfehler C3117 interface“: Eine Schnittstelle kann nur eine Basisklasse besitzen.
Compilerfehler C3118 interface“: Schnittstellen unterstützen keine virtuelle Vererbung.
Compilerfehler C3119 alignas(void) ist nicht zulässig.
Compilerfehler C3120 identifier“: Schnittstellenmethoden können keine Variablenargumentlisten verwenden.
Compilerfehler C3121 GUID kann für die Klasse „class“ nicht geändert werden.
Compilerfehler C3122 interface“: Eine generische WinRT-Schnittstelle kann keine GUID haben.
Compilerfehler C3123 Eine generische WinRT-Schnittstelle darf keine Einschränkungen aufweisen.
Compilerfehler C3124 „signed char“ ist kein gültiger WinRT-Datentyp. Verwenden Sie stattdessen „unsigned char“, „wchar_t"“ oder „signed short“.
Compilerfehler C3125 type“: Typ kann nicht direkt oder indirekt von „Platform::Exception“ abgeleitet werden.
Compilerfehler C3126 Eine „union“ kann nicht innerhalb des verwalteten/WinRT-Typs „type“ definiert werden.
Compilerfehler C3127 type“: Das Merkmal „trait“ darf nur für eine WinRT-Verweisklasse verwendet werden.
Compilerfehler C3128 type“enthält nicht die von „type“ eingeführte vtable.
Compilerfehler C3129 type“: __default_vptr_for_base kann nur innerhalb von lokal definierten polymorphen Typen und Basen verwendet werden.
Compilerfehler C3130 Interner Compilerfehler: Eingefügter Codeblock kann nicht in PDB geschrieben werden.
Compilerfehler C3131 Das Projekt muss ein „Modulattribut“ mit der Eigenschaft „Name“ besitzen.
Compilerfehler C3132 parameter“: Parameterarrays können nur auf formale Argumente vom Typ „eindimensionales verwaltetes/WinRT-Array“ angewendet werden.
Compilerfehler C3133 Attribute können nicht auf varargs in C++ angewendet werden.
Compilerfehler C3134 value“: Der Wert des Attributarguments „argument“ weist keinen gültigen Typ „type“ auf.
Compilerfehler C3135 identifier“: Eine Eigenschaft kann nicht vom Typ „const“ oder „volatile“ sein.
Compilerfehler C3136 interface“: Eine COM-Schnittstelle kann nur von einer anderen COM-Schnittstelle erben, „interface“ ist keine COM-Schnittstelle.
Compilerfehler C3137 identifier“: Eine Eigenschaft kann nicht initialisiert werden.
Compilerfehler C3138 identifier“: Eine „attribute“-Schnittstelle muss von IDispatch erben oder von einer Schnittstelle, die von IDispatch erbt
Compilerfehler C3139 type“: Ein UDT kann nicht ohne Elemente exportiert werden.
Compilerfehler C3140 Es können nicht mehrere „module“-Attribute in der gleichen Kompilationseinheit vorhanden sein.
Compilerfehler C3141 interface“: Schnittstellen unterstützen nur die öffentliche Vererbung.
Compilerfehler C3142 property“: Sie können die Adresse einer Eigenschaft nicht übernehmen.
Compilerfehler C3143 argument“: Ein Attributargument kann nicht mehrere Werte haben.
Compilerfehler C3144 attribut“: Das Attribut erfordert explizite Argumente, „argument“ ist unbenannt.
Compilerfehler C3145 identifier“: Eine globale oder statische Variable hat möglicherweise nicht den verwalteten/WinRT-Typ „type“.
Compilerfehler C3146 Veraltet.
Compilerfehler C3147 Veraltet.
Compilerfehler C3148 Veraltet.
Compilerfehler C3149 type“: Dieser Typ kann ohne „token“ der obersten Ebene hier nicht verwendet werden.
Compilerfehler C3150 construct“: „attribute“ kann nur auf eine Klasse, Struktur, Schnittstelle, Array oder Zeiger angewendet werden.
Compilerfehler C3151 Veraltet.
Compilerfehler C3152 function“: „keyword“ kann nur auf eine Klasse, Struktur oder virtuelle Memberfunktion angewendet werden.
Compilerfehler C3153 interface“: Sie können keine Instanz einer Schnittstelle erstellen.
Compilerfehler C3154 Vor den Auslassungspunkten wird "," erwartet. Für Parameterarrayfunktionen werden Auslassungspunkte, die nicht durch Trennzeichen getrennt sind, nicht unterstützt.
Compilerfehler C3155 In einem Eigenschaftenindexer sind keine Attribute zulässig.
Compilerfehler C3156 class“: Es ist keine lokale Definition für einen verwalteten/WinRT-Typ zulässig.
Compilerfehler C3157 Das ParamArray-Attribut kann nur auf den letzten Parameter angewendet werden.
Compilerfehler C3158 function“: „keyword“ kann nur auf eine virtuelle Memberfunktion angewendet werden.
Compilerfehler C3159 identifier“: Array von Zeigern zu einem Werttyp kann nicht deklariert werden.
Compilerfehler C3160 type“: Ein Datenmember einer verwalteten/WinRT-Klasse kann nicht diesen Typ aufweisen.
Compilerfehler C3161 interface“: Es ist nicht zulässig, eine Klasse, Struktur oder Schnittstelle in einer Schnittstelle zu schachteln. Das Gleiche gilt für das Schachteln einer Schnittstelle in einer Klasse oder Struktur.
Compilerfehler C3162 type“: Ein Referenztyp mit einem Destruktor kann nicht als Typ des statischen Datenmembers „member“ verwendet werden.
Compilerfehler C3163 class“: Attribute sind mit vorheriger Deklaration inkonsistent.
Compilerfehler C3164 Veraltet.
Compilerfehler C3165 value“: Konvertierung in einen Ganzzahl- oder Fließkommawert nicht möglich
Compilerfehler C3166 Veraltet. „type“: Ein Datenmember einer verwalteten/WinRT-Klasse darf den Typ „pointer_type“ nicht innerhalb von „managed_pointer_type“ enthalten.
Compilerfehler C3167 .NET Framework konnte nicht initialisiert werden: Vergewissern Sie sich, dass es installiert ist.
Compilerfehler C3168 type“: Ungültiger zugrunde liegender Typ für Enumeration
Compilerfehler C3169 type“: Typ für „auto“ kann nicht aus „type“ hergeleitet werden.
Compilerfehler C3170 Es können nicht verschiedene Modulbezeichner in einem Projekt vorhanden sein.
Compilerfehler C3171 module“: Es können nicht verschiedenen Modulattribute in einem Projekt angegeben werden.
Compilerfehler C3172 identifier“: Es können nicht unterschiedliche idl_module-Attribute in einem Projekt angegeben werden.
Compilerfehler C3173 Versionskonflikt beim Zusammenführen von idl
Compilerfehler C3174 Das Modulattribut wurde nicht angegeben.
Compilerfehler C3175 function“: Eine Methode eines verwalteten Typs kann nicht von einer nicht verwalteten Funktion „function“ aufgerufen werden
Compilerfehler C3176 type“: ein lokaler Werttyp kann nicht deklariert werden.
Compilerfehler C3177 Sie können keine Konvertierungsfunktion in einen Typ verwenden, der „type“ enthält (in Visual Studio 2022 veraltet).
Compilerfehler C3178 type“: ParamArray kann in einer Funktion mit Standardargumenten nicht verwendet werden (in Visual Studio 2022 veraltet.)
Compilerfehler C3179 Ein unbenannter verwalteter/WinRT-Typ ist nicht zulässig.
Compilerfehler C3180 type“: Der Typenname ist größer als das Metadatenlimit von „number“ Zeichen.
Compilerfehler C3181 type“: ungültiger Operand für operator
Compilerfehler C3182 type“: Eine using- oder Zugriffsdeklaration für ein Member ist in einem verwalteten/WinRT-Typ unzulässig.
Compilerfehler C3183 Eine unbenannte Klasse, Struktur oder Union kann nicht innerhalb des verwalteten/WinRT-Typs „class“ definiert werden.
Compilerfehler C3184 Veraltet.
Compilerfehler C3185 „typeid“: wurde für verwalteten/WinRT-Typ „type“ verwendet; verwenden Sie stattdessen „operator“.
Compilerfehler C3186 Veraltet.
Compilerfehler C3187 identifier“: ist nur im Text einer Funktion verfügbar
Compilerfehler C3188 Veraltet.
Compilerfehler C3189 „typeid<declarator>“: Diese Syntax wird nicht mehr unterstützt, verwenden Sie stattdessen ::typeid ( in Visual Studio 2022 veraltet).
Compilerfehler C3190 declarator“ ist mit den bereitgestellten Vorlagenargumenten nicht die explizite Instanziierung der Memberfunktionen von „type
Compilerfehler C3191 Veraltet.
Compilerfehler C3192 Syntaxfehler: „^“ ist kein Präfixoperator. (Meinten Sie „*“?)
Compilerfehler C3193 construct“: Erfordert die Befehlszeilenoption „/clr“ oder „/ZW“.
Compilerfehler C3194 type“: Ein Werttyp darf keinen Zuweisungsoperator aufweisen.
Compilerfehler C3195 keyword“: ist reserviert und kann nicht als Member einer Verweisklasse oder eines Werttyps verwendet werden. CLR- oder WinRT-Operatoren müssen mit dem Schlüsselwort „operator“ definiert werden.
Compilerfehler C3196 identifier“: mehrmals verwendet
Compilerfehler C3197 keyword“: kann nur in Definitionen verwendet werden
Compilerfehler C3198 Unzulässige Verwendung von Gleitkommapragmas: Das fenv_access-Pragma funktioniert nur im precise-Modus.
Compilerfehler C3199 Ungültige Verwendung von Gleitkommapragmas: Ausnahmen werden nur im precise-Modus unterstützt.

Weitere Informationen

C/C++-Compiler und -Buildtools: Fehler und Warnungen
Compilerfehler C2000 bis C3999, C7000 bis C7999