Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In de artikelen in deze sectie van de documentatie wordt een subset uitgelegd van de foutberichten die door de compiler worden gegenereerd.
Belangrijk
De Visual Studio-compilers en buildhulpprogramma's kunnen allerlei soorten fouten en waarschuwingen rapporteren. Nadat er een fout of waarschuwing is gevonden, kunnen de buildhulpprogramma's veronderstellingen maken over de intentie van code en proberen door te gaan, zodat er meer problemen tegelijkertijd kunnen worden gerapporteerd. Als de hulpprogramma's de verkeerde aanname maken, zijn latere fouten of waarschuwingen mogelijk niet van toepassing op uw project. Wanneer u problemen in uw project corrigeert, begint u altijd met de eerste fout of waarschuwing die wordt gerapporteerd en bouwt u deze vaak opnieuw. Eén oplossing kan meerdere volgende fouten oplossen.
Als u hulp wilt krijgen bij een bepaald diagnostisch bericht in Visual Studio, selecteert u dit in het venster Uitvoer en drukt u op de F1--toets. Visual Studio opent de documentatiepagina voor die fout, indien aanwezig. U kunt ook het zoekprogramma bovenaan de pagina gebruiken om artikelen te vinden over specifieke fouten of waarschuwingen. Of blader door de lijst met fouten en waarschuwingen per hulpprogramma en typ de inhoudsopgave op deze pagina.
Opmerking
Niet elke Visual Studio-fout of -waarschuwing wordt gedocumenteerd. In veel gevallen bevat het diagnostische bericht alle beschikbare informatie. Als u op deze pagina terechtkomt en denkt dat het foutbericht of waarschuwingsbericht aanvullende uitleg nodig heeft, laat het ons dan weten met behulp van de feedbackknoppen op deze pagina. Als u denkt dat de fout of waarschuwing onjuist is of als u een ander probleem met de toolset hebt gevonden, meldt u een productprobleem op de Developer Community-site. U kunt ook feedback verzenden en bugs invoeren in de IDE. Ga in Visual Studio naar de menubalk en kies Help > Feedback verzenden > Een probleem meldenof een suggestie indienen met behulp van Help > Feedback verzenden > Een functie voorstellen. Er zijn enkele onderwerpen over compilerfouten gemaakt die niet door de compiler worden verzonden en nu worden omgeleid naar deze pagina.
Mogelijk vindt u aanvullende hulp bij fouten en waarschuwingen in Microsoft Q&A C++ forums. U kunt ook zoeken naar de fout of het waarschuwingsnummer op de Visual Studio C++ Developer Community-site. U kunt ook zoeken Stack Overflow- om oplossingen te vinden.
Zie voor koppelingen naar aanvullende hulpbronnen en communitybronnen Visual C++ Hulp en Community.
Foutberichten
| Fout | Bericht |
|---|---|
| Compilerfout C2900 | 'declarator': sjablonen voor lidfuncties in WinRT-klassen moeten 'privé', 'intern' of 'beschermd privé' zijn |
| Compilerfout C2901 | 'id': een algemene interface of gemachtigde kan niet openbaar zijn |
| Compilerfout C2902 | token: onverwacht token na 'sjabloon/generic', identificatie verwacht (verouderd in Visual Studio 2022.) |
| Compilerfout C2903 | 'id': het symbool is geen klassesjabloon/algemeen noch een functiesjabloon/algemeen |
| Compilerfout C2904 | 'id': naam die al wordt gebruikt voor een sjabloon in het huidige bereik |
| Compilerfout C2905 | Verouderd. |
| Compilerfout C2906 | 'template': voor expliciete specialisatie is sjabloon <>vereist |
| Compilerfout C2907 | registerargument 'getal' geeft geen geldig registernummer op |
| Compilerfout C2908 | expliciete specialisatie; 'sjabloon' is al geïnstantieerd |
| Compilerfout C2909 | 'id': expliciete instantiëring van functiesjabloon vereist retourtype |
| Compilerfout C2910 | 'functie': kan niet expliciet gespecialiseerd zijn |
| Compilerfout C2911 | member: kan niet worden gedeclareerd of gedefinieerd in de huidige scope |
| Compilerfout C2912 | expliciete specialisatie 'declaratie' is geen specialisatie van een functiesjabloon |
| Compilerfout C2913 | expliciete specialisatie; 'declaratie' is geen specialisatie van een klassesjabloon |
| Compilerfout C2914 | 'id': kan sjabloon/algemeen argument niet afleiden omdat functieargument dubbelzinnig is |
| Compilerfout C2915 | 'id': 'type' kan niet rechtstreeks worden gebruikt op het gepubliceerde oppervlak van een WinRT-type. Gebruik in plaats daarvan Platform::Object^om dit type door te geven |
| Compilerfout C2916 | 'identifier': [FlagsAttribute] moet (alleen) worden opgegeven op een openbare opsomming met een onderliggend type niet-ondertekende int |
| Compilerfout C2917 | 'id': ongeldige sjabloonparameter (verouderd in Visual Studio 2022.) |
| Compilerfout C2918 | 'identifier': Geïndexeerde eigenschappen kunnen niet worden gebruikt op het gepubliceerde vlak van een WinRT-type |
| Compilerfout C2919 | 'type': Operators kunnen niet worden gebruikt op het gepubliceerde oppervlak van een WinRT-type |
| Compilerfout C2920 | herdefinitie: 'type': klasse-template/generiek is al gedeclareerd als 'verklaring' |
| Compilerfout C2921 | nl-NL: herdefinitie: 'type': klassesjabloon/generiek wordt opnieuw gedefinieerd als 'declaratie' |
| Compilerfout C2922 | 'interface': een WinRT-interface kan geen statische leden bevatten |
| Compilerfout C2923 | 'type': 'id' is geen geldig sjabloon-/algemeen typeargument voor parameter 'parameter' |
| Compilerfout C2924 | __declspec(interrupt) routineargument niet in R2 |
| Compilerfout C2925 | __declspec(interrupt) routine kan geen drijvende komma gebruiken |
| Compilerfout C2926 | 'id': een standaard initialisatiefunctie voor leden is niet toegestaan voor een lid van een anonieme struct binnen een union |
| Compilerfout C2927 | 'id': een functiesjabloon moet worden aangeroepen met ten minste één argument |
| Compilerfout C2928 | expliciete instantiëring; 'id' is geen functie of statisch gegevenslid van sjabloonklasse 'klasse' |
| Compilerfout C2929 | "declarator": expliciete instantiëring; kan geen instantiëring van sjabloonklasseleden expliciet forceren en onderdrukken |
| Compilerfout C2930 | 'klasse': template-id/generic-id opnieuw gedefinieerd als opsomming van 'enum id' |
| Compilerfout C2931 | 'class1': template-id/generic-id opnieuw gedefinieerd als lidfunctie van 'class2' (verouderd in Visual Studio 2022.) |
| Compilerfout C2932 | 'type': template-id/generic-id opnieuw gedefinieerd als gegevenslid van 'id' (verouderd in Visual Studio 2022.) |
| Compilerfout C2933 | 'type': template-id/generic-id opnieuw gedefinieerd als een typedef-lid van 'identificator' (verouderd in Visual Studio 2022.) |
| Compilerfout C2934 | 'type': template-id/generic-id opnieuw gedefinieerd als een genest 'element' van 'identificator' (verouderd in Visual Studio 2022.) |
| Compilerfout C2935 | 'type': template-id/generic-id opnieuw gedefinieerd als een globale functie (verouderd in Visual Studio 2022.) |
| Compilerfout C2936 | 'type': template-id/generic-id opnieuw gedefinieerd als een globale gegevensvariabele (verouderd in Visual Studio 2022.) |
| Compilerfout C2937 | 'type': template-id/generic-id opnieuw gedefinieerd als een globale typedef (verouderd in Visual Studio 2022.) |
| Compilerfout C2938 | 'id' : kan aliassjabloon niet specialiseren |
| Compilerfout C2939 | 'type': template-id/generic-id opnieuw gedefinieerd als een lokale gegevensvariabele (verouderd in Visual Studio 2022.) |
| Compilerfout C2940 | 'type': template-id/generic-id opnieuw gedefinieerd als een lokale typedef (verouderd in Visual Studio 2022.) |
| Compilerfout C2941 | 'type': template-id/generic-id opnieuw gedefinieerd als een lokaal item (verouderd in Visual Studio 2022.) |
| Compilerfout C2942 | 'type': template-id/generic-id opnieuw gedefinieerd als een formeel argument van een functie (verouderd in Visual Studio 2022.) |
| Compilerfout C2943 | 'type': template-id/generic-id opnieuw gedefinieerd als een typeargument van een sjabloon (verouderd in Visual Studio 2022.) |
| Compilerfout C2944 | 'type': template-id/generic-id opnieuw gedefinieerd als waardeargument van een sjabloon (verouderd in Visual Studio 2022.) |
| Compilerfout C2945 | expliciete instantiëring verwijst niet naar een specialisatie van sjabloonklasse |
| Compilerfout C2946 | expliciete instantiëring; 'Type' is geen templatespecialisatie |
| Compilerfout C2947 | verwacht dat '>' sjabloonargumenten beëindigt, token gevonden |
| Compilerfout C2948 | expliciete instantiëring; opslagklasseaanduiding 'specifier' is niet toegestaan voor specialisatie |
| Compilerfout C2949 | thread_local wordt niet ondersteund met /kernel |
| Compilerfout C2950 | Verouderd. |
| Compilerfout C2951 | sjabloon-/generieke declaraties zijn alleen toegestaan op globaal niveau, naamruimte-niveau of klasse-bereik |
| Compilerfout C2952 | 'declaratie': sjabloon/algemene declaratie ontbrekende sjabloon/algemene parameterlijst |
| Compilerfout C2953 | 'type': klassesjabloon is al gedefinieerd |
| Compilerfout C2954 | instructiewoordargument buiten bereik |
| Compilerfout C2955 | 'type': voor het gebruik van klassesjabloon/generic is een sjabloon-/algemene lijst met argumenten vereist |
| Compilerfout C2956 | De gebruikelijke vrijgavefunctie 'functie' zou worden gekozen als toewijzingsvrijgavefunctie. |
| Compilerfout C2957 | 'token': ongeldig linkerdelimiter: verwacht '<' |
| Compilerfout C2958 | het openingsscheidingsteken dat is gevonden bij 'file(line_number)' werd niet correct gematcht |
| Compilerfout C2959 | een algemene klasse of functie is mogelijk geen lid van een sjabloon |
| Compilerfout C2960 | Verouderd. |
| Compilerfout C2961 | 'functie': inconsistente expliciete instantiëringen, een vorige expliciete instantiëring heeft geen argument opgegeven |
| Compilerfout C2962 | syntaxisfout: token: verwachte definitie van de functie lid van sjabloonklasse om te eindigen met '}' |
| Compilerfout C2963 | Verouderd. |
| Compilerfout C2964 | Verouderd. |
| Compilerfout C2965 | __declspec(specifier) wordt niet ondersteund met /kernel |
| Compilerfout C2966 | 'id1': moet dezelfde __declspec(code_seg(...)) hebben als de basisklasse 'identifier2' (verouderd in Visual Studio 2022.) |
| Compilerfout C2967 | 'id': een overschrijvende virtuele functie moet dezelfde __declspec(code_seg(...)) hebben als een overschreven virtuele functie (verouderd in Visual Studio 2022.) |
| Compilerfout C2968 | 'identificator': recursieve aliasdeclaratie |
| Compilerfout C2969 | syntaxisfout: token: verwachte lidfunctie-definitie te eindigen met '}' |
| Compilerfout C2970 | 'type': sjabloonparameter 'parameter': 'argument': een expressie met objecten met interne koppeling kan niet worden gebruikt als een niet-type argument |
| Compilerfout C2971 | 'type': sjabloonparameter 'parameter': 'argument': een variabele met niet-statische opslagduur kan niet worden gebruikt als een niet-type argument |
| Compilerfout C2972 | 'type': sjabloonparameter 'parameter': het type argument dat niet van het type is, is ongeldig |
| Compilerfout C2973 | 'sjabloon': ongeldig sjabloonargument 'nummer' |
| Compilerfout C2974 | 'type': ongeldig sjabloon-/algemeen argument voor 'parameter', een type verwacht |
| Compilerfout C2975 | 'type': ongeldig sjabloonargument voor parameter, verwachte compilatietijdconstante expressie |
| Compilerfout C2976 | 'type': te weinig sjabloon-/algemene argumenten |
| Compilerfout C2977 | 'type': te veel sjabloon-/algemene argumenten |
| Compilerfout C2978 | syntaxisfout: verwacht 'trefwoord1' of 'trefwoord2'; gevonden type 'type'; niet-type parameters worden niet ondersteund in generics |
| Compilerfout C2979 | expliciete specialisaties worden niet ondersteund in generics |
| Compilerfout C2980 | Verwerking van C++-uitzonderingen wordt niet ondersteund met /kernel |
| Compilerfout C2981 | de dynamische vorm van trefwoord wordt niet ondersteund met /kernel |
| Compilerfout C2982 | 'verklaring': verschillende __declspec(code_seg(...)) gebruikt: was 'id1' nu 'id2' |
| Compilerfout C2983 | 'naam': een definitie moet hetzelfde __declspec(code_seg(...)) zijn als de vorige declaratie |
| Compilerfout C2984 | Verouderd. |
| Compilerfout C2985 | 'argument': het argument voor __declspec(code_seg(...)) moet een tekstsectie zijn |
| Compilerfout C2986 | '__declspec(code_seg(...))' kan alleen worden toegepast op een klasse of functie |
| Compilerfout C2987 | een declaratie mag niet zowel __declspec(code_seg(id)) als __declspec(code_seg('waarde')) bevatten |
| Compilerfout C2988 | onherkenbare sjabloondeclaratie/definitie |
| Compilerfout C2989 | 'klasse': klassesjabloon/algemeen is al gedeclareerd als een niet-klassesjabloon/algemeen |
| Compilerfout C2990 | 'klasse': niet-klassesjabloon/algemeen is al gedeclareerd als klassesjabloon/algemeen |
| Compilerfout C2991 | herdefinitie van sjabloon/algemene parameter 'parameter' |
| Compilerfout C2992 | 'klasse': ongeldige of ontbrekende sjabloon/algemene parameterlijst |
| Compilerfout C2993 | 'type': ongeldig type voor niet-type sjabloonparameter 'id' |
| Compilerfout C2994 | naamloze klasse in sjabloonparameterlijst |
| Compilerfout C2995 | 'declaratie': functiesjabloon is al gedefinieerd |
| Compilerfout C2996 | 'functie': recursieve functiesjabloondefinitie |
| Compilerfout C2997 | 'functie': matrixgrens kan niet worden afgeleid van een standaard initialisatiefunctie voor leden |
| Compilerfout C2998 | 'id': kan geen sjabloondefinitie zijn |
Zie ook
C/C++ Compiler- en buildhulpprogrammafouten en waarschuwingen
Compilerfouten C2000 - C3999, C7000 - C7999