Teilen über


Compilerfehler C3400 bis C3499

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 C3400 Zirkuläre Einschränkungsabhängigkeit mit „constraint1“ und „constraint2
Compilerfehler C3401 specifier“: Ungültiger Assembly-Zugriffsspezifizierer – für Klassenvorlagen ist nur „private“ zulässig
Compilerfehler C3402 function“: Die Überladung kann nicht aufgelöst werden, außer im aktuellen Gültigkeitsbereich
Compilerfehler C3403 thread_local kann mit /clr:pure oder /clr:safe nicht verwendet werden
Compilerfehler C3404 construct“: Unerwarteter Syntaxfehler
Compilerfehler C3405 function“: Die Überladung kann nicht ohne vollständigen Deskriptor aufgelöst werden
Compilerfehler C3406 keyword“: Darf nicht in einem ausführlichen Typspezifizierer verwendet werden
Compilerfehler C3407 type“ kann in diesem Kontext nicht verwendet werden
Compilerfehler C3408 attribute“: Das Attribut ist für Vorlagendefinitionen nicht zulässig
Compilerfehler C3409 Ein leerer Attributblock ist nicht zulässig
Compilerfehler C3410 identifier“: Der Typ der expliziten Instanziierung „type“ stimmt nicht mit dem Typ der Variablenvorlage „type“ überein
Compilerfehler C3411 type“ ist als Größe eines Arrays ungültig, da es sich nicht um einen ganzzahligen Typ handelt
Compilerfehler C3412 specialization“: Die Vorlage kann nicht im aktuellen Gültigkeitsbereich spezialisiert werden
Compilerfehler C3413 template“: Ungültige explizite Instanziierung
Compilerfehler C3414 function“: Die importierte Memberfunktion kann nicht definiert werden
Compilerfehler C3415 Es wurden mehrere „section“-Abschnitte mit unterschiedlichen Attributen gefunden („0xvalue“)
Compilerfehler C3416 Veraltet.
Compilerfehler C3417 declarator“: Werttypen können keine benutzerdefinierten speziellen Memberfunktionen enthalten
Compilerfehler C3418 Der Zugriffsspezifizierer „specifier“ wird nicht unterstützt
Compilerfehler C3419 Veraltet.
Compilerfehler C3420 function“: Ein Finalizer darf nicht virtuell sein
Compilerfehler C3421 function“: Sie können den Finalizer für diese Klasse nicht aufrufen, da auf ihn nicht zugegriffen werden kann oder er nicht vorhanden ist.
Compilerfehler C3422 declaration“: Nicht übereinstimmende Typen „type“ und „type
Compilerfehler C3423 Veraltet.
Compilerfehler C3424 type“: Eine Umwandlung des Funktionsformats in einen Arraytyp ist nicht zulässig
Compilerfehler C3425 Ein Zeiger auf ein Objekt des unvollständigen Typs „type“ kann nicht ausgelöst werden
Compilerfehler C3426 Ein Objekt des unvollständigen Typs „type“ kann nicht ausgelöst werden
Compilerfehler C3427 context“: „keyword“ kann nicht mit der layout_version(number) verwendet werden.
Compilerfehler C3428 context“: „keyword“ kann nur auf Klassendeklarationen oder -definitionen angewendet werden
Compilerfehler C3429 context“: „keyword“ kann nicht auf eine Union angewendet werden
Compilerfehler C3430 Eine Enumeration mit eigenem Gültigkeitsbereich muss einen Namen aufweisen
Compilerfehler C3431 identifier“: type1 kann nicht als type2 neu deklariert werden
Compilerfehler C3432 identifier“: Für eine Vorwärtsdeklaration einer Enumeration ohne eigenen Gültigkeitsbereich ist ein zugrunde liegender Typ erforderlich
Compilerfehler C3433 identifier“: Alle Deklarationen einer Enumeration müssen denselben zugrunde liegenden Typ aufweisen. Alter Typ: „type1“, aktueller Typ: „type2
Compilerfehler C3434 context“: Der Enumeratorwert „number“ kann nicht als „type“ dargestellt werden, der Wert ist „number
Compilerfehler C3435 Der Zeichensatz „name“ wird nicht unterstützt.
Compilerfehler C3436 #pragma setlocale wird nicht unterstützt, wenn /source-charset, /execution-charset oder /utf-8 angegeben wurde
Compilerfehler C3437 #pragma execution_character_set wird nicht unterstützt, wenn /source-charset, /execution-charset oder /utf-8 angegeben wurde
Compilerfehler C3438 context“: „value“ kann nicht auf eine verwaltete Klasse/WinRT-Klasse angewendet werden
Compilerfehler C3439 layout_version(number): ungültige Versionsnummer
Compilerfehler C3440 declaration“: layout_version(number) ist nicht mit einer vorherigen Deklaration kompatibel
Compilerfehler C3441 declaration“: „keyword“ darf nicht angewendet werden, nachdem die Klasse definiert wurde
Compilerfehler C3442 Mehrere Member der Union werden initialisiert: „member1“ und „member2
Compilerfehler C3443 Der Standardmemberinitialisierer für „class“ ist rekursiv
Compilerfehler C3444 Die leere Aggregatklasse „class“ muss mit „{}“ initialisiert werden
Compilerfehler C3445 Die copy-list-Initialisierung von „type“ darf keinen expliziten Konstruktor verwenden
Compilerfehler C3446 class“: Ein Standardmemberinitialisierer ist für einen Member einer Wertklasse nicht zulässig
Compilerfehler C3447 operand für den bedingten Operator ?: weist den Typ „void“ auf, other-operand ist allerdings weder ein throw-Ausdruck noch vom Typ „void“
Compilerfehler C3448 Die Anzahl der Bezeichner muss mit der Anzahl der Arrayelemente oder-member in der Deklaration einer strukturierten Bindung übereinstimmen
Compilerfehler C3449 Die Anzahl der Bezeichner muss mit dem Wert von std::tuple_size<type-name>::value in einer strukturierten Bindung übereinstimmen, die einen tupelartigen Typ aufweist.
Compilerfehler C3450 type“: ist kein Attribut; [System::AttributeUsageAttribute]/[Windows::Foundation::Metadata::AttributeUsageAttribute] kann nicht angegeben werden.
Compilerfehler C3451 attribute“: Ein nicht verwaltetes Attribut kann nicht auf „type“ angewendet werden
Compilerfehler C3452 Der Listenargumentmember ist keine Konstante.
Compilerfehler C3453 attribute“: Das Attribut wurde nicht angewendet, da der Qualifizierer „qualifier“ nicht übereinstimmte
Compilerfehler C3454 [attribut] ist in der Klassendeklaration nicht zulässig
Compilerfehler C3455 attribute“: Keiner der Attributkonstruktoren stimmte mit den Argumenten überein
Compilerfehler C3456 [source_annotation_attribute] ist in einer verwalteten Klassendeklaration/WinRT-Klassendeklaration nicht zulässig
Compilerfehler C3457 attribute“: Das Attribut unterstützt keine unbenannten Argumente
Compilerfehler C3458 „[attribute]“: Das Attribut „[attribute]“ wurde bereits für „identifier“ angegeben
Compilerfehler C3459 „[attribute]“: Das Attribut ist nur für den Klassenindexer (indizierte Standardeigenschaft) zulässig
Compilerfehler C3460 type“: Nur ein benutzerdefinierter Typ kann weitergeleitet werden
Compilerfehler C3461 type“: Nur ein verwalteter Typ/WinRT-Typ kann weitergeleitet werden
Compilerfehler C3462 type“: Nur ein importierter Typ kann weitergeleitet werden
Compilerfehler C3463 type“: Der Typ ist im Attribut „implements“ nicht zulässig
Compilerfehler C3464 type“: Ein geschachtelter Typ kann nicht weitergeleitet werden
Compilerfehler C3465 Um den Typ „type“ zu verwenden, müssen Sie auf die Assembly „assembly“ verweisen
Compilerfehler C3466 type“: Eine Spezialisierung einer generischen Klasse kann nicht weitergeleitet werden
Compilerfehler C3467 type“: Dieser Typ wurde bereits weitergeleitet
Compilerfehler C3468 type“: Sie können einen Typ nur an eine Assembly weiterleiten: „identifier“ ist keine Assembly
Compilerfehler C3469 type“: Eine generische Klasse kann nicht weitergeleitet werden
Compilerfehler C3470 class“: Eine Klasse kann nicht gleichzeitig einen Indexer (indizierte Standardeigenschaft) und einen []-Operator aufweisen
Compilerfehler C3471 Der neue Modulname module-name (in der Befehlszeile festgelegt) verursacht einen Konflikt mit dem vorherigen Namen module-name
Compilerfehler C3472 Der neue Ausgabedateiname filename (in der Befehlszeile festgelegt) verursacht einen Konflikt mit dem vorherigen Dateinamen filename
Compilerfehler C3473 Es wurde kein Ausgabepfadname oder Modulname angegeben.
Compilerfehler C3474 Die Ausgabedatei „filename konnte nicht geöffnet werden
Compilerfehler C3475 Syntaxfehler in der Eingabedatei „filename
Compilerfehler C3476 Die Datei „filename“ konnte nicht für die Eingabe geöffnet werden
Compilerfehler C3477 Eine Lambdafunktion kann nicht in einem nicht ausgewerteten Kontext angezeigt werden
Compilerfehler C3478 identifier“: Ein Array darf nicht nach Kopie erfasst werden
Compilerfehler C3479 SAL-Anmerkungen in Lambdafunktionen werden nicht unterstützt
Compilerfehler C3480 variable“: Eine Lambdaerfassungsvariable muss aus einem umschließenden Funktionsbereich stammen
Compilerfehler C3481 identifier“: Es wurde keine Lambdaerfassungsvariable gefunden
Compilerfehler C3482 "this" kann nur als Lambdaerfassung innerhalb einer nicht statischen Memberfunktion verwendet werden.
Compilerfehler C3483 identifier“ ist bereits Teil der Lambdaerfassungsliste
Compilerfehler C3484 Syntaxfehler: „->“ wird vor dem Rückgabetyp erwartet
Compilerfehler C3485 Eine Lambdadefinition darf keine CV-Qualifizierer aufweisen (Veraltet in Visual Studio 2022.)
Compilerfehler C3486 Ein Parameter für eine Lambdafunktion darf kein Standardargument aufweisen (Veraltet in Visual Studio 2022.)
Compilerfehler C3487 type“: Alle Rückgabeausdrücke müssen auf denselben Typ zurückgeführt werden: Zuvor war es „type
Compilerfehler C3488 „&identifier“ ist nicht zulässig, wenn der Standarderfassungsmodus ein Modus nach Verweis ist
Compilerfehler C3489 „&identifier“ ist erforderlich, wenn der Standarderfassungsmodus ein Modus nach Kopie ist
Compilerfehler C3490 identifier“ kann nicht geändert werden, da über ein Konstantenobjekt darauf zugegriffen wird
Compilerfehler C3491 identifier“: Eine Erfassung nach Kopie kann in einer unveränderlichen Lambdafunktion nicht geändert werden
Compilerfehler C3492 identifier“: Ein Member einer anonymen Union kann nicht erfasst werden
Compilerfehler C3493 identifier“ kann nicht implizit erfasst werden, da kein Standarderfassungsmodus angegeben wurde
Compilerfehler C3494 „this“ kann nicht explizit erfasst werden, da ein umschließender Erfassungsmodus dies nicht zulässt
Compilerfehler C3495 identifier“: Der Bezeichner in der Erfassung muss eine Variable mit automatischer Speicherdauer sein, deklariert im Gültigkeitsbereich der Lambdafunktion
Compilerfehler C3496 "this" wird immer nach Wert erfasst: "&" wird ignoriert.
Compilerfehler C3497 Es kann keine Instanz einer Lambdafunktion erstellt werden
Compilerfehler C3498 identifier“: Eine Variable mit einem verwalteten Typ/WinRT-Typ kann nicht erfasst werden
Compilerfehler C3499 Ein Lambda, für das ein Void-Rückgabetyp angegeben wurde, kann keinen Wert zurückgeben.

Weitere Informationen

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