Teilen über


Compilerfehler C2500 bis C2599

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. 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 Meldung
Compiler-Fehler C2500 'Bezeichner1': 'Bezeichner2'ist bereits eine direkte Basisklasse
Compilerfehler C2501 'Bezeichner': '__declspec(Spezifizierer)' kann nur auf structs, unions, classes oder unsigned bit Feld members angewendet werden
Compiler-Fehler C2502 'Bezeichner': zu viele Zugriffsmodifikatoren in der Basisklasse
Compiler-Fehler C2503 'Klasse': Basisklassen können keine Arrays der Größe Null enthalten
Compiler-Fehler C2504 'Klasse': Basisklasse undefiniert
Compiler-Fehler C2505 'symbol': '__declspec(Spezifizierer)' kann nur auf Deklarationen oder Definitionen von globalen Objekten oder statischen Datenelementen angewendet werden.
Compiler-Fehler C2506 'Mitglied': '__declspec(Spezifizierer)' kann nicht auf dieses Symbol angewendet werden
Compiler-Fehler C2507 'Bezeichner'Zu viele virtuelle Modifikatoren auf der Basisklasse
Compilerfehler C2508 'Bezeichner': '__declspec(Spezifizierer1)' kann nicht kombiniert werden mit '__declspec(Bezeichner2)'
Compiler-Fehler C2509 'Bezeichner': Mitgliedsfunktion nicht deklariert in 'Klasse'
Compiler-Fehler C2510 'Bezeichner': links von '::' muss eine Klasse/Struktur/Vereinigung sein
Compiler-Fehler C2511 'Bezeichner': überladene Mitgliedsfunktion nicht gefunden in 'Klasse'
Compiler-Fehler C2512 'Bezeichner': kein geeigneter Standardkonstruktor verfügbar
Compiler-Fehler C2513 '*Typ': keine Variable vor '=' deklariert
Compiler-Fehler C2514 'Klasse': Klasse has no constructors
Compilerfehler C2515 'Bezeichner'vtguard' kann nur auf Klassendeklarationen oder -definitionen angewendet werden.
Compiler-Fehler C2516 'Klasse': ist keine legale Basisklasse
Compiler-Fehler C2517 'Bezeichner': right of '::' is undefined
Compiler-Fehler C2518 Schlüsselwort "Schlüsselwort" ist in einer Basisklassenliste ungültig; Einen class Namen erwartet
Compilerfehler C2519 'Bezeichner': WinRT-Attribut dürfen nur öffentliche Felder enthalten
Compilerfehler C2520 'Klasse': kein nicht-expliziter Konstruktor für implizite Konvertierung verfügbar
Compiler-Fehler C2521 ein Destruktor/Finalisator nimmt keine Argumente entgegen
Compilerfehler C2522 'Bezeichner': Überladungsbezeichner kann nicht für '' verwendet werdenBezeichner1' as it's already specified on 'Bezeichner2'
Compiler-Fehler C2523 'Klasse::~Bezeichner': Unstimmigkeit zwischen Destruktor- und Finalisierungs-Tag
Compiler-Fehler C2524 'Bezeichner'Ein Destruktor/Finalisierer muss eine 'void'-Parameterliste haben.
Compilerfehler C2525 'Bezeichner': Der Parameter 'Bezeichner1'wird ' genanntBezeichner2'auf die Basisfunktion und muss in einer veröffentlichten Implementierung angepasst werden
Compiler-Fehler C2526 'Bezeichner1': C-Verknüpfungsfunktion kann keine C++-Klasse zurückgeben 'Bezeichner2'
Compilerfehler C2527 'Bezeichner': DefaultOverload kann nicht für beide ' angegeben werden.Funktion1' und 'Funktion2'. Entfernen Sie eine Spezifikation oder benennen Sie die Funktion während der Implementierung um
Compiler-Fehler C2528 'Bezeichner': Zeiger auf Referenz ist illegal
Compiler-Fehler C2529 'Bezeichner': Verweis auf Verweis ist illegal
Compiler-Fehler C2530 'Bezeichner': Verweise müssen initialisiert werden
Compiler-Fehler C2531 'Bezeichner': Verweis auf ein Bitfeld illegal
Compiler-Fehler C2532 'Bezeichner': illegaler Modifikator als Referenz
Compiler-Fehler C2533 'Bezeichner': Konstruktoren dürfen keinen Rückgabetyp haben
Compiler-Fehler C2534 'Bezeichner': Konstruktor kann keinen Wert zurückgeben
Compiler-Fehler C2535 'Bezeichner': Mitgliedsfunktion bereits definiert oder deklariert
Compilerfehler C2536 Veraltet.
Compiler-Fehler C2537 'Spezifizierer': illegale Verknüpfungsspezifikation
Compilerfehler C2538 Veraltet.
Compilerfehler C2539 Veraltet.
Compiler-Fehler C2540 nicht konstanter Ausdruck als gebundenes Array
Compiler-Fehler C2541 'Bezeichner'Löschen von Objekten, die keine Zeiger sind, ist nicht möglich.
Compiler-Fehler C2542 'Bezeichner': Klassenobjekt hat keinen Konstruktor für die Initialisierung
Compiler-Fehler C2543 expected ']' for operator '[]'
Compiler-Fehler C2544 erwartet ')' für Operator '()'
Compiler-Fehler C2545 'operator': überladenen Operator nicht finden können
Compilerfehler C2546 'Bezeichner'Wenn ein Typ sowohl in einem PIA als auch in einem No-PIA definiert ist, muss das PIA zuerst referenziert werden.
Compilerfehler C2547 'Bezeichner': Alle Parameter einer veröffentlichten Methode müssen in der Deklaration explizit genannt werden.
Compiler-Fehler C2548 'function': Fehlendes Standardargument für Parameterparameter
Compiler-Fehler C2549 Benutzerdefinierte Konvertierung kann keinen Rückgabetyp angeben
Compiler-Fehler C2550 'Bezeichner'Konstruktor-Initialisierungslisten sind nur für Konstruktor-Definitionen zulässig.
Compiler-Fehler C2551 "void *"-Zeiger muss explizit in einen Typ umgewandelt werden
Compiler-Fehler C2552 'Bezeichner': Nicht-Aggregate können nicht mit einer Initialisierungsliste initialisiert werden.
Compiler-Fehler C2553 'Typabgeleitete_klasse::Funktion': Der Rückgabetyp der überschreibenden virtuellen Funktion unterscheidet sich von 'Typbase_class::Funktion'
Compilerfehler C2554 'variable': 'constinit' ist nur für eine variable Deklaration mit statischer oder Threadspeicherdauer zulässig.
Compiler-Fehler C2555 'abgeleitete_klasse::Funktion': Der Rückgabetyp der überschreibenden virtuellen Funktion unterscheidet sich und ist nicht kovariant zu 'base_class::Funktion'
Compiler-Fehler C2556 'function1': Überladene Funktion unterscheidet sich nur vom Rückgabetyp von 'function2'
Compiler-Fehler C2557 'Bezeichner': private und geschützte Mitglieder können nicht ohne einen Konstruktor initialisiert werden
Compiler-Fehler C2558 Klasse 'Klasse': kein Kopierkonstruktor vorhanden oder Kopierkonstruktor ist als 'explizit' deklariert
Compilerfehler C2559 'Bezeichner': Eine Member-Funktion ohne ref-qualifier kann nicht mit einer Member-Funktion mit ref-qualifier überladen werden.
Compilerfehler C2560 'Bezeichner': Eine Mitgliedsfunktion mit ref-qualifier kann nicht mit einer Mitgliedsfunktion ohne ref-qualifier überladen werden.
Compiler-Fehler C2561 'Funktion': Funktion muss einen Wert zurückgeben
Compiler-Fehler C2562 'Funktion': 'void'-Funktion, die einen Wert zurückgibt
Compiler-Fehler C2563 Unstimmigkeit in der Liste der formalen Parameter
Compilerfehler C2564 Veraltet.
Compilerfehler C2565 'Bezeichner'ref-qualifier ist illegal für Konstruktoren/Destruktoren
Compiler-Fehler C2566 überladene Funktion in bedingtem Ausdruck
Compiler-Fehler C2567 Metadaten können nicht in 'Dateiname', möglicher_Grund
Compiler-Fehler C2568 'Bezeichner': Funktionsüberladung kann nicht aufgelöst werden
Compiler-Fehler C2569 'Bezeichner': enum/Gewerkschaft kann nicht als Basisklasse verwendet werden
Compiler-Fehler C2570 'Bezeichner': Union kann keine Basisklassen haben
Compiler-Fehler C2571 'Bezeichner': virtuelle Funktion kann nicht in Union sein 'Gewerkschaft'
Compiler-Fehler C2572 'Funktion': Neudefinition des Standardarguments: Parameter Nummer
Compiler-Fehler C2573 'Klasse': Zeiger auf Objekte dieses Typs können nicht gelöscht werden; die Klasse hat keine Überladung für 'operator delete' ohne Platzierung. Verwenden Sie ::delete, oder fügen Sie 'operator delete(void*)' zur Klasse hinzu
Compiler-Fehler C2574 'function': kann nicht statisch deklariert werden.
Compiler-Fehler C2575 'Bezeichner'Nur Mitgliedsfunktionen und Basen können virtuell sein.
Compilerfehler C2576 'Bezeichner': Sie können eine neue virtuelle Methode nicht als "öffentlich" einführen. Ziehen Sie in Erwägung, die Methode nicht-virtuell zu machen oder die Zugänglichkeit auf "intern" oder "geschützt privat" zu ändern.
Compiler-Fehler C2577 'Bezeichner': ein Destruktor/Finalisierer kann keinen Rückgabetyp haben
Compilerfehler C2578 'Klasse'Typ: kann keinen 'protected' oder 'protected public' Konstruktor haben
Compiler-Fehler C2579 kann den Typ nicht auflösen Typ (Versatz). Es wird erwartet in Dateiname
Compilerfehler C2580 'Bezeichner'Mehrere Versionen eines standardmäßigen speziellen Mitglieds sind nicht erlaubt.
Compiler-Fehler C2581 'Typ'statische Funktion 'operator =' ist illegal
Compiler-Fehler C2582 'operator operator'Funktion ist nicht mehr verfügbar in 'Typ'
Compiler-Fehler C2583 'identifier': 'const/volatile' 'this'-Zeiger ist illegal für Konstruktoren/Destruktoren
Compiler-Fehler C2584 'Klasse': direkte Basis 'base_class2'ist unzugänglich; bereits eine Basis von 'Basis_Klasse1'
Compiler-Fehler C2585 explizite Konvertierung in 'Typ'ist mehrdeutig
Compiler-Fehler C2586 Falsche benutzerdefinierte Konvertierungssyntax: illegale Umleitungen
Compiler-Fehler C2587 'Bezeichner': illegale Verwendung von lokalen Variablen als Standardparameter
Compiler-Fehler C2588 '::~Bezeichner': illegaler globaler Destruktor/Finalisierer
Compiler-Fehler C2589 'Bezeichner': illegales Token auf der rechten Seite von '::'
Compilerfehler C2590 'Bezeichner': Nur ein Konstruktor kann eine Base/Member-Initialisierungsliste haben
Compilerfehler C2591 ExklusivZu kann nicht verwenden 'Typ'als Argument. Nur eine 'ref Klasse' ist ein gültiges Argument
Compiler-Fehler C2592 'Klasse': 'base_class2'wird geerbt von 'Basis_Klasse1' und cannot be re-specified
Compiler-Fehler C2593 'operator Bezeichner'ist mehrdeutig
Compiler-Fehler C2594 'operator': Zweideutige Konvertierungen von 'Typ1' bis 'Typ2'
Compilerfehler C2595 'Bezeichner'Ein WinRT-Attribut-Typ muss versiegelt sein
Compilerfehler C2596 'Bezeichner' A WinRT Attribut Feld can only be a 'public enum Klasse', 'int', 'unsigned int', 'bool', 'Platform::Typ', 'Platform::String' or 'Windows::Foundation::HResult'
Compiler-Fehler C2597 Unzulässiger Verweis auf nicht-statisches Mitglied 'Bezeichner'
Compiler-Fehler C2598 Verknüpfungsspezifikation muss im globalen Reservierungsumfang sein
Compiler-Fehler C2599 'Bezeichner'Die Vorwärtsdeklaration eines managed/WinRT enum ist nicht erlaubt.

Weitere Informationen

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