Sprache

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