Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In den Artikeln in diesem Abschnitt der Dokumentation wird eine Teilmenge der vom Compiler generierten Fehlermeldungen erläutert.
Wichtig
Die Visual Studio-Compiler und Build-Tools können verschiedene Arten von Fehlern und Warnungen melden. 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. Ein Fix kann mehrere nachfolgende Fehler beheben.
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 auf dieser Seite landen und denken, dass die Fehlermeldung oder Warnmeldung zusätzliche Erläuterungen benötigt, teilen Sie uns diese über die Feedbackschaltflächen auf dieser Seite mit. 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 > Problem melden, oder senden Sie einen Vorschlag über Hilfe > Feedback senden > Feature vorschlagen. Es wurden einige Themen zu Compilerfehlern erstellt, die nicht vom Compiler ausgegeben werden und Sie jetzt stattdessen zu dieser Seite umleiten.
Weitere Unterstützung bei Fehlern und Warnungen finden Sie in den Microsoft Q&A C++-Foren. 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 | Nachricht |
|---|---|
| Compilerfehler C2400 | Inlineassembler-Syntaxfehler in „context“; „token“ gefunden |
| Compilerfehler C2401 | „identifier“: Das Register muss in „context“ ein Basisregister sein. |
| Compilerfehler C2402 | „identifier“: Das Register muss in „context“ ein Index sein. |
| Compilerfehler C2403 | „identifier“: Das Register muss in „context“ ein Basisregister bzw. Index sein. |
| Compilerfehler C2404 | „identifier“: Unzulässiges Register in „context“ |
| Compilerfehler C2405 | Unzulässiger kurzer Vorwärtsverweis mit Offset |
| Compilerfehler C2406 | „identifier“: Name nicht definiert in „context“ |
| Compilerfehler C2407 | Unzulässiges float-Register in „context“ |
| Compilerfehler C2408 | Unzulässiger Typ in Verbindung mit dem PTR-Operator in „context“ |
| Compilerfehler C2409 | Unzulässiger Typ wird als Operator in „context“ verwendet. |
| Compilerfehler C2410 | „identifier“: Mehrdeutiger Membername in „context“ |
| Compilerfehler C2411 | „identifier“: Unzulässiger Member vom Typ „struct“ bzw. „union“ in „context“ |
| Compilerfehler C2412 | „label“: Bezeichnung, bei der nicht zwischen Groß- und Kleinschreibung unterschieden wird, wurde neu definiert |
| Compilerfehler C2413 | „identifier“: Unzulässige Ausrichtungsgröße |
| Compilerfehler C2414 | Ungültige Operandenanzahl |
| Compilerfehler C2415 | Ungültiger Operandentyp |
| Compilerfehler C2416 | Das Attribut „attribute“ kann in diesem Kontext nicht angewendet werden. |
| Compilerfehler C2417 | Division durch 0 in „context“ |
| Compilerfehler C2418 | Browserdatei kann nicht gelöscht werden: filename |
| Compilerfehler C2419 | Modulo durch 0 in „context“ |
| Compilerfehler C2420 | „identifier“: Unzulässiges Symbol in context |
| Compilerfehler C2421 | PTR-Operator mit Register in „context“ verwendet |
| Compilerfehler C2422 | Unzulässige Segmentüberschreibung in „context“ |
| Compilerfehler C2423 | „number“: Unzulässige Skalierung |
| Compilerfehler C2424 | „token“: Ungültiger Ausdruck in „context“ |
| Compilerfehler C2425 | „token“: Nicht konstanter Ausdruck in „context“ |
| Compilerfehler C2426 | „token“: Unzulässiger Operator in „context“ |
| Compilerfehler C2427 | „class“: In diesem Bereich kann die Klasse nicht definiert werden. |
| Compilerfehler C2428 | „operation“: Nicht zulässig für Operand vom Typ „bool“ |
| Compilerfehler C2429 | „Sprachfeature“ erfordert Compilerflag „compiler option“ |
| Compilerfehler C2430 | Mehr als ein Indexregister in „context“ |
| Compilerfehler C2431 | Unzulässiges Indexregister in „context“ |
| Compilerfehler C2432 | Unzulässiger Verweis auf 16-Bit-Daten in „context“ |
| Compilerfehler C2433 | „identifier“: „modifier“ nicht zulässig für Datendeklarationen |
| Compilerfehler C2434 | „symbol“: Ein mit __declspec(process) deklariertes Symbol kann nicht dynamisch im /clr:pure-Modus initialisiert werden. |
| Compilerfehler C2435 | 'var': Die dynamische Initialisierung erfordert verwaltetes CRT, kann nicht mit /clr:safe kompiliert werden. |
| Compilerfehler C2436 | „identifier“: Memberfunktion oder geschachtelte Klasse in der Liste der Konstruktorinitialisierungen |
| Compilerfehler C2437 | „identifier“: Wurde bereits initialisiert |
| Compilerfehler C2438 | „identifier“: Initialisierung statischer Klassendaten über Konstruktor nicht möglich |
| Compilerfehler C2439 | „identifier“: Element konnte nicht initialisiert werden |
| Compilerfehler C2440 | „conversion“: Das Konvertieren von „type_1“ in „type_2“ ist nicht möglich. |
| Compilerfehler C2441 | „variable“: Ein mit __declspec(process) deklariertes Symbol muss const im Modus „/clr:pure“ entsprechen. |
| Compilerfehler C2442 | „identifier“: Eine verschachtelte Namespace-Definition darf nicht inline sein oder Attribute aufweisen. |
| Compilerfehler C2443 | Operandgrößenkonflikt |
| Compilerfehler C2444 | „identifier“: Verwendet ANSI-Prototypen, „type“ wurde gefunden, „{“ oder „;“ erwartet |
| Compilerfehler C2445 | Der Ergebnistyp des bedingten Ausdrucks ist mehrdeutig: Typen 'Typ 1' und 'Typ 2' können in mehrere gängige Typen konvertiert werden. |
| Compilerfehler C2446 | „operator“: Keine Konvertierung von „type_1“ in „type_2“ |
| Compilerfehler C2447 | „{“: Funktionsheader fehlt – Parameterliste im alten Stil? |
| Compilerfehler C2448 | „identifier“: Funktionsstil-Initialisierung scheint eine Funktionsdefinition zu sein |
| Compilerfehler C2449 | „{“ auf Dateiebene gefunden – fehlt der Funktionsheader? |
| Compilerfehler C2450 | Ein switch Ausdruck vom Typ "Type" ist unzulässig. |
| Compilerfehler C2451 | Bedingter Ausdruck vom Typ „type“ ist nicht zulässig |
| Compilerfehler C2452 | „type“: Ungültiger Quelltyp für safe_cast |
| Compilerfehler C2453 | „type“: Ungültiger Zieltyp für „safe_cast“ |
| Compilerfehler C2454 | „identifier“: Ein Namespace-Aliasname kann nicht mithilfe eines qualifizierten Namens deklariert werden. |
| Compilerfehler C2455 | „class“ ist eine von einer importierten Basisklasse abgeleitete WinRT-Veweisklasse, die nicht abstrakt sein kann. |
| Compilerfehler C2456 | „class“ ist eine nicht versiegelte Verweisklasse, die keinen öffentlichen sichtbaren Konstruktor haben kann. Versiegeln Sie die Klasse, oder geben Sie stattdessen den Konstruktor als „internal“, „protected private“ oder „private“ an. |
| Compilerfehler C2457 | „identifier“: Ein vordefiniertes Makro kann nicht außerhalb eines Funktionstexts vorkommen. |
| Compilerfehler C2458 | „identifier“: Neudefinition in einer Definition |
| Compilerfehler C2459 | „identifier“: Wird definiert und kann nicht als zusätzliches anonymes Element hinzugefügt werden |
| Compilerfehler C2460 | „identifier_1“: Verwendet „identifier_2“ (wird definiert) |
| Compilerfehler C2461 | „class“: In der Konstruktorsyntax fehlen formale Parameter. |
| Compilerfehler C2462 | „identifier“: Typdefinition in „new-expression“ nicht möglich |
| Compilerfehler C2464 | „type“: „new“ kann nicht zur Zuordnung eines Verweises verwendet werden. |
| Compilerfehler C2465 | Definition anonymer Typen innerhalb von Klammern nicht möglich |
| Compilerfehler C2466 | Ein Array mit konstanter Größe 0 kann nicht zugewiesen werden. |
| Compilerfehler C2467 | Unzulässige Deklaration anonymer Elemente vom Typ „user_defined_type“ |
| Compilerfehler C2468 | Der Konstruktor kann in einer Klasse oder Struktur mit virtuellen Basisklassen nicht „constexpr“ sein. |
| Compilerfehler C2469 | „new“: Zuordnung von Objekten vom Typ „void“ nicht möglich |
| Compilerfehler C2470 | „function“: Sieht wie eine Funktionsdefinition aus, es ist aber keine Parameterliste vorhanden. Der sichtbare Funktionstext wird übersprungen. |
| Compilerfehler C2471 | Die Programmdatenbank „filename“ kann nicht aktualisiert werden. |
| Compilerfehler C2472 | „function“ kann nicht in verwaltetem Code generiert werden: „message“. Kompilieren Sie mit „/clr“, um ein gemischtes Image zu generieren. |
| Compilerfehler C2473 | „identifier“: Sieht wie eine Funktionsdefinition aus, weist jedoch keine Parameterliste auf. |
| Compilerfehler C2474 | „identifier“: Es fehlt ein angrenzendes Semikolon, kann entweder ein Schlüsselwort oder ein Bezeichner sein. |
| Compilerfehler C2475 | „identifier“: Neudefinition; Nichtübereinstimmung Spezifizierer „constexpr“ |
| Compilerfehler C2477 | 'member': Statisches Datenmember darf nicht über eine abgeleitete Klasse initialisiert werden |
| Compilerfehler C2478 | Die Deklaration ist nicht mit „instance“ kompatibel. |
| Compilerfehler C2479 | „identifier“: „allocate( )“ ist nur für statische Daten gültig. |
| Compilerfehler C2480 | „identifier“: „thread“ ist nur für statische Daten gültig. |
| Compilerfehler C2481 | „identifier“: „thread_local“ ist nur für statische Member und Variablen mit Namespace- oder Blockbereich gültig. |
| Compilerfehler C2482 | „identifier“: Dynamische Initialisierung von threadlokalen Daten ist in verwaltetem Code bzw. WinRT-Code nicht zulässig. |
| Compilerfehler C2483 | „identifier“: Objekte mit Destruktoren oder einem Nicht-Aggregat-Typ können in verwaltetem Code bzw. WinRT-Code nicht mit Threadspeicherdauer deklariert werden. |
| Compilerfehler C2485 | „identifier“: Nicht erkanntes erweitertes Attribut |
| Compilerfehler C2486 | „__LOCAL_SIZE“ nur in Funktionen mit dem Attribut „naked“ zulässig |
| Compilerfehler C2487 | „identifier“: Ein Element der Klasse mit DLL-Schnittstellen darf nicht mit einer DLL-Schnittstelle deklariert werden. |
| Compilerfehler C2488 | „identifier“: „naked“ kann nur auf Nicht-Memberfunktionsdefinitionen angewendet werden. |
| Compilerfehler C2489 | „identifier“: Eine initialisierte automatische Variable oder Registervariable ist im Funktionsgültigkeitsbereich einer naked-Funktion nicht zulässig. |
| Compilerfehler C2490 | „keyword“ in Funktionen mit dem Attribut „naked“ nicht zulässig |
| Compilerfehler C2491 | „identifier“: Definition der dllimport-Funktion nicht zulässig |
| Compilerfehler C2492 | „variable“: Daten mit Threadspeicherdauer dürfen keine DLL-Schnittstelle haben. |
| Compilerfehler C2493 | Unzulässige Form von __based |
| Compilerfehler C2494 | „keyword“ kann nicht innerhalb eines Filterausdrucks oder __finally/finally-Blocks aufgerufen werden. |
| Compilerfehler C2495 | „identifier“: „__declspec(noexcept)“ kann nur auf Funktionsdeklarationen oder Funktionsdefinitionen angewendet werden. |
| Compilerfehler C2496 | „identifier“: „selectany“ kann nur auf Daten mit externer Bindung angewendet werden. |
| Compilerfehler C2497 | „identifier“: „implementation_key“ kann nur auf Funktionsdeklarationen angewendet werden. |
| Compilerfehler C2498 | „function“: „novtable“ kann nur auf Klassendeklarationen oder Definitionen angewendet werden. |
| Compilerfehler C2499 | „class“: Eine Klasse kann nicht ihre eigene Basisklasse sein |
Siehe auch
C/C++-Compiler und -Buildtools: Fehler und Warnungen
Compilerfehler C2001–C3999, C7000–C7999