Sdílet prostřednictvím


Chyby kompilátoru C2800 až C2899

Články v této části dokumentace vysvětlují podmnožinu chybových zpráv generovaných kompilátorem.

Důležité

Kompilátory a nástroje sestavení sady Visual Studio můžou hlásit mnoho druhů chyb a upozornění. Po nalezení chyby nebo upozornění můžou nástroje sestavení předpokládat záměr kódu a pokusit se pokračovat, aby bylo možné nahlásit více problémů současně. Pokud nástroje promítnou nesprávný předpoklad, nemusí se na váš projekt vztahovat pozdější chyby nebo upozornění. Když opravíte problémy v projektu, vždy začněte první chybou nebo upozorněním, která se hlásí, a často se znovu sestaví. Jedním z oprav může dojít k mnoha následným chybám.

Pokud chcete získat nápovědu pro konkrétní diagnostickou zprávu v sadě Visual Studio, vyberte ji v okně Výstup a stiskněte klávesu F1 . Visual Studio otevře stránku dokumentace pro tuto chybu, pokud existuje. K vyhledání článků o konkrétních chybách nebo upozorněních můžete použít také vyhledávací nástroj v horní části stránky. Nebo si projděte seznam chyb a upozornění podle nástroje a zadejte obsah na této stránce.

Poznámka:

Ne každá chyba nebo upozornění sady Visual Studio jsou zdokumentované. V mnoha případech poskytuje diagnostická zpráva všechny dostupné informace. Pokud jste se dostali na tuto stránku, když jste použili klávesu F1 a myslíte si, že chybová zpráva nebo zpráva s upozorněním potřebuje další vysvětlení, dejte nám vědět. Pomocí tlačítek pro zpětnou vazbu na této stránce můžete vyvolat problém s dokumentací na GitHubu. Pokud se domníváte, že chyba nebo upozornění je nesprávné nebo jste zjistili jiný problém se sadou nástrojů, nahlašte problém s produktem na webu komunity vývojářů. Můžete také odeslat zpětnou vazbu a zadat chyby v integrovaném vývojovém prostředí ( IDE). V sadě Visual Studio přejděte na řádek nabídek a zvolte Možnost Odeslat > zpětnou vazbu > o problému nebo odešlete návrh pomocí funkce Poslat návrh poslat > názor>. Některá témata chyb kompilátoru byla vytvořena, která kompilátor nevygeneruje, a teď se přesměrují na tuto stránku.

Další pomoc s chybami a upozorněními najdete ve fórech Q&A pro Microsoft Learn. Nebo vyhledejte chybu nebo číslo upozornění na webu komunity vývojářů v sadě Visual Studio C++. Řešení můžete vyhledat také ve službě Stack Overflow .

Odkazy na další zdroje nápovědy a komunity najdete v nápovědě a komunitě visual C++.

Chybové zprávy

Chyba Zpráva
Chyba kompilátoru C2800 Operátor operátoru nelze přetížit.
Chyba kompilátoru C2801 Člen musí být nestatický člen.
Chyba kompilátoru C2802 static member 'operator' has no formal parameters
Chyba kompilátoru C2803 Operátor "operator" musí mít alespoň jeden formální parametr typu třídy.
Chyba kompilátoru C2804 Binární operátor operátor má příliš mnoho parametrů.
Chyba kompilátoru C2805 Binární operátor operátor má příliš málo parametrů.
Chyba kompilátoru C2806 Operátor operátoru má příliš mnoho formálních parametrů.
Chyba kompilátoru C2807 druhý formální parametr pro příponu operátoru musí být int.
Chyba kompilátoru C2808 unární operátor má příliš mnoho formálních parametrů.
Chyba kompilátoru C2809 Operátor operátor nemá žádné formální parametry.
Chyba kompilátoru C2810 "interface": rozhraní může dědit pouze z jiného rozhraní.
Chyba kompilátoru C2811 'type1': nemůže dědit z 'type2', třída ref může dědit pouze z třídy ref nebo třídy rozhraní.
Chyba kompilátoru C2812 #import nepodporuje /clr:pure a /clr:safe
Chyba kompilátoru C2813 #import se v /MP nepodporuje
Chyba kompilátoru C2814 'member': Nativní typ nelze vnořit do typu managed/WinRT 'class'.
Chyba kompilátoru C2815 "operator delete": První formální parametr musí být "void *", ale byl použit typ.
Chyba kompilátoru C2816 vyvolání makra podobného funkci chybí ukončením znaku ')'.
Chyba kompilátoru C2817 návratový typ pro operátor delete musí být void.
Chyba kompilátoru C2818 použití přetížené 'operator ->' rekurzivní prostřednictvím typu 'class'
Chyba kompilátoru C2819 type 'class' nemá přetížený člen 'operator ->'
Chyba kompilátoru C2820 Zastaralé.
Chyba kompilátoru C2821 první formální parametr operátoru new musí být "size_t"
Chyba kompilátoru C2822 Místní odvíjení není na této platformě podporováno.
Chyba kompilátoru C2823 Šablona typedef/generic je neplatná.
Chyba kompilátoru C2824 návratový typ pro operátor new musí být void *.
Chyba kompilátoru C2825 'identifier': musí být třída nebo obor názvů, pokud následuje ::.
Chyba kompilátoru C2826 Zastaralé.
Chyba kompilátoru C2827 Operátor operátoru nelze globálně přepsat unárním formulářem.
Chyba kompilátoru C2828 Operátor operátoru nelze globálně přepsat binárním formulářem.
Chyba kompilátoru C2829 Operátor operátor nemůže mít seznam parametrů proměnných.
Chyba kompilátoru C2830 Výchozí hodnoty můžou mít pouze parametry umístění operátoru new.
Chyba kompilátoru C2831 Operátor operátor nemůže mít výchozí parametry.
Chyba kompilátoru C2832 Identifikátor: Typ odkazu nemůže být inicializován hodnotou.
Chyba kompilátoru C2833 Token operátoru není rozpoznaný operátor nebo typ.
Chyba kompilátoru C2834 Operátor operátoru musí být globálně kvalifikovaný (zastaralé v sadě Visual Studio 2022.)
Chyba kompilátoru C2835 převod typu definovaný uživatelem nepřijímá žádné formální parametry.
Chyba kompilátoru C2836 Identifikátor: Pouze jeden nestatický datový člen sjednocení může mít výchozí inicializátor člena.
Chyba kompilátoru C2837 'function': Ve stejné funkci nelze použít direktivy OpenMP a smyčku #pragma(hint_parallel).
Chyba kompilátoru C2838 'identifikátor': neplatný kvalifikovaný název v deklaraci člena
Chyba kompilátoru C2839 neplatný návratový typ 'type' pro přetížený operátor ->.
Chyba kompilátoru C2840 argument instrukční slovo není konstantní
Chyba kompilátoru C2841 argument register not constant
Chyba kompilátoru C2842 'class': typ managed/WinRT nemusí definovat vlastní operátor new nebo operator delete.
Chyba kompilátoru C2843 Člen: nemůže převzít adresu nestatického datového člena nebo metody spravovaného typu /WinRT.
Chyba kompilátoru C2844 Identifikátor: nemůže být členem rozhraní Interface.
Chyba kompilátoru C2845 'type': ukazatel aritmetika není u tohoto typu povolena.
Chyba kompilátoru C2846 "interface": Rozhraní nemůže mít konstruktor.
Chyba kompilátoru C2847 nelze použít velikost u typu managed/WinRT 'class'.
Chyba kompilátoru C2848 'class': Spravovaný typ /WinRT nemůže být členem sjednocení.
Chyba kompilátoru C2849 "interface": Rozhraní nemůže mít destruktor.
Chyba kompilátoru C2850 'construct': povoleno pouze v oboru souboru; nemusí být vnořený konstruktor.
Chyba kompilátoru C2851 'enum': Veřejný výčt WinRT může jako základní typ použít pouze int nebo unsigned int.
Chyba kompilátoru C2852 Identifikátor: v rámci třídy lze inicializovat pouze datové členy.
Chyba kompilátoru C2853 Identifikátor: Nestatický datový člen nemůže mít typ, který obsahuje "auto"
Chyba kompilátoru C2854 Chyba syntaxe v #pragma hdrstop
Chyba kompilátoru C2855 Možnost příkazového řádku option 'option' nekonzistentní s předkompilovanou hlavičkou
Chyba kompilátoru C2856 #pragma hdrstop nemůže být uvnitř bloku #if
Chyba kompilátoru C2857 Příkaz #include zadaný s parametrem příkazového řádku /Yc nebyl ve zdrojovém souboru nalezen.
Chyba kompilátoru C2858 Možnost příkazového řádku /Yc (/název souboru Fd) je nekonzistentní s předkompilovanou hlavičkou, která používala název souboru /Fd(zastaralé v sadě Visual Studio 2022.)
Chyba kompilátoru C2859 název souboru není soubor typu filetype , který byl použit při vytvoření předkompilované hlavičky, znovu vytvořte předkompilovanou hlavičku.
Chyba kompilátoru C2860 Parametr void nelze použít jako parametr funkce s výjimkou parametru '(void)'.
Chyba kompilátoru C2861 'deklarace': Členská funkce rozhraní nemůže být definována.
Chyba kompilátoru C2862 "interface": rozhraní může mít pouze veřejné členy.
Chyba kompilátoru C2863 'interface': rozhraní nemůže mít přátele
Chyba kompilátoru C2864 'identifikátor': Statický datový člen nebo proměnná šablony s inicializátorem v třídě musí mít celočíselný typ nestálého const
Chyba kompilátoru C2865 "operator": neplatné porovnání ukazatele objektu nebo úchytu
Chyba kompilátoru C2866 Zastaralé.
Chyba kompilátoru C2867 Identifikátor: není obor názvů.
Chyba kompilátoru C2868 'identifikátor': neplatná syntaxe pro using-deklaraci; očekávaný kvalifikovaný název
Chyba kompilátoru C2869 Identifikátor: již byl definován jako obor názvů.
Chyba kompilátoru C2870 'identifier': Definice oboru názvů se musí objevit buď v oboru souboru, nebo okamžitě v rámci jiné definice oboru názvů.
Chyba kompilátoru C2871 Identifikátor: Obor názvů s tímto názvem neexistuje.
Chyba kompilátoru C2872 'identifier': nejednoznačný symbol
Chyba kompilátoru C2873 'symbol': symbol nelze použít v deklaraci using
Chyba kompilátoru C2874 using-deklarace způsobí více deklarací identifikátoru.
Chyba kompilátoru C2875 using-deklarace způsobí více deklarací třídy::identifier (zastaralé v sadě Visual Studio 2022.)
Chyba kompilátoru C2876 'class::member': Ne všechna přetížení jsou přístupná
Chyba kompilátoru C2877 Člen není přístupný z třídy.
Chyba kompilátoru C2878 'identifier': Obor názvů nebo třída tohoto názvu neexistuje.
Chyba kompilátoru C2879 Identifikátor: Definici aliasu oboru názvů může dát alternativní název pouze existující obor názvů.
Chyba kompilátoru C2880 __swi nebo __hvc vyžaduje platnou konstantu jako první argument (číslo SWI).
Chyba kompilátoru C2881 Identifikátor: už se používá jako alias třídy.
Chyba kompilátoru C2882 'identifikátor': neplatné použití identifikátoru oboru názvů ve výrazu
Chyba kompilátoru C2883 'function': Deklarace funkce koliduje s identifikátorem zavedeným pomocí deklarace using
Chyba kompilátoru C2884 'identifikátor': zavedený pomocí deklarace koliduje s místní funkcí "function"
Chyba kompilátoru C2885 'class::identifier': není platná deklarace using v oboru mimo třídu.
Chyba kompilátoru C2886 'class::identifier': symbol nelze použít v členu using-deklarace
Chyba kompilátoru C2887 __swi nebo __hvc nesmí mít více než pět argumentů (číslo SWI, r0 – r3)
Chyba kompilátoru C2888 'identifier': symbol nemůže být definován v oboru názvů 'namespace'
Chyba kompilátoru C2889 'class': spravovaný typ třídy WinRT nemůže být virtuální základní třídou.
Chyba kompilátoru C2890 'class': Ref třída může mít pouze jednu základní třídu bez rozhraní.
Chyba kompilátoru C2891 Parametr: nemůže převzít adresu parametru šablony.
Chyba kompilátoru C2892 místní třída nesmí mít šablony členů.
Chyba kompilátoru C2893 Nepodařilo se specializovat šablonu funkce template
Chyba kompilátoru C2894 Šablony nelze deklarovat tak, aby měly propojení C.
Chyba kompilátoru C2895 "deklarace": Nelze explicitně vytvořit instanci šablony funkce deklarované pomocí knihovny dllimport.
Chyba kompilátoru C2896 "function1": Jako argument funkce (zastaralé v sadě Visual Studio 2022) nelze použít šablonu funkce/generic function2.)
Chyba kompilátoru C2897 Destruktor/finalizátor nemůže být šablona funkce.
Chyba kompilátoru C2898 Deklarace: Šablony členské funkce nemohou být virtuální.
Chyba kompilátoru C2899 Zastaralé.

Viz také

Chyby a upozornění kompilátoru C/C++ a nástrojů sestavení
Chyby kompilátoru C2000 – C3999, C7000 – C7999