Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Č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