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 C3000 | 'symbol': Použití šablony třídy vyžaduje seznam argumentů šablony. Dedukce argumentů není povolena v nestatického datovém členu. |
| Chyba kompilátoru C3001 | 'message': byl očekáváno název direktivy OpenMP. |
| Chyba kompilátoru C3002 | Name1 name2: více názvů direktiv OpenMP |
| Chyba kompilátoru C3003 | 'direktiva': Název direktivy OpenMP není povolen za klauzulemi direktiv |
| Chyba kompilátoru C3004 | 'klauzule': klauzule není platná pro direktivu OpenMP "direktiva". |
| Chyba kompilátoru C3005 | 'message': Neočekávaný token byl zjištěn u direktivy Direktiva OpenMP |
| Chyba kompilátoru C3006 | 'klauzule': klauzule o direktivě OpenMP 'direktiva' chybí očekávaný argument. |
| Chyba kompilátoru C3007 | 'klauzule': klauzule o direktivě OpenMP 'direktiva' nepřebírají argument. |
| Chyba kompilátoru C3008 | 'argument': chybí závěr ')' u direktivy OpenMP 'direktiva'. |
| Chyba kompilátoru C3009 | 'label': přeskočte do strukturovaného bloku OpenMP, který není povolený |
| Chyba kompilátoru C3010 | 'label': přeskakování ze strukturovaného bloku OpenMP není povoleno |
| Chyba kompilátoru C3011 | vložené sestavení není povolené přímo v rámci paralelní oblasti. |
| Chyba kompilátoru C3012 | 'function': Vnitřní funkce není povolena přímo v rámci paralelní oblasti. |
| Chyba kompilátoru C3013 | "klauzule": klauzule může být v direktivě OpenMP "direktiva" uvedena pouze jednou. |
| Chyba kompilátoru C3014 | očekává se smyčka for podle direktivy OpenMP "direktivy". |
| Chyba kompilátoru C3015 | inicializace v příkazu OpenMP for má nesprávný tvar |
| Chyba kompilátoru C3016 | 'identifier': Index variable in OpenMP 'for' statement must have signed integral type |
| Chyba kompilátoru C3017 | test ukončení v příkazu OpenMP for má nesprávný tvar |
| Chyba kompilátoru C3018 | Identifikátor: OpenMP pro test nebo inkrementace musí používat proměnnou indexu proměnnou variable |
| Chyba kompilátoru C3019 | Increment in openMP 'for' statement has improper form |
| Chyba kompilátoru C3020 | Proměnná: Proměnná indexu smyčky OpenMP for nelze upravit v těle smyčky. |
| Chyba kompilátoru C3021 | 'argument': argument je prázdný u direktivy OpenMP direktivy direktivy |
| Chyba kompilátoru C3022 | "direktivou": neplatný druh "směrnice" o směrnici OpenMP "direktiva" |
| Chyba kompilátoru C3023 | 'argument': V argumentu pro klauzuli Direktiva OpenMP došlo k neočekávanému tokenu. |
| Chyba kompilátoru C3024 | 'schedule(runtime)': výraz chunk_size není povolený. |
| Chyba kompilátoru C3025 | 'klauzule': očekávaný integrální výraz |
| Chyba kompilátoru C3026 | 'klauzule': Konstantní výraz musí být kladný. |
| Chyba kompilátoru C3027 | 'klauzule': aritmetický výraz nebo očekávaný výraz ukazatele |
| Chyba kompilátoru C3028 | Člen: V klauzuli sdílení dat lze použít pouze proměnnou nebo statický datový člen. |
| Chyba kompilátoru C3029 | 'symbol': může se v klauzulích sdílení dat v direktivě OpenMP zobrazit pouze jednou. |
| Chyba kompilátoru C3030 | 'identifier': proměnná v klauzuli /direktivě 'direktiva' nemůže mít odkazový typ. |
| Chyba kompilátoru C3031 | 'identifier': proměnná v klauzuli 'reduction' musí mít skalární aritmetický typ. |
| Chyba kompilátoru C3032 | 'identifier': proměnná v klauzuli 'klauzule' nemůže mít neúplný typ 'type' |
| Chyba kompilátoru C3033 | 'identifier': proměnná v klauzuli klauzule nemůže mít typ const-qualified |
| Chyba kompilátoru C3034 | Direktiva "direktiva" OpenMP nemůže být přímo vnořená do direktivy "direktiva". |
| Chyba kompilátoru C3035 | Direktiva OpenMP "ordered" musí svázat přímo s direktivou "for" nebo "parallel for" s klauzulí "ordered" |
| Chyba kompilátoru C3036 | 'klauzule': Neplatný token operátoru v klauzuli OpenMP 'reduction' |
| Chyba kompilátoru C3037 | 'identifier': Proměnná v klauzuli 'klauzule' musí být sdílena v uzavřeném kontextu. |
| Chyba kompilátoru C3038 | 'identifier': proměnná v klauzuli private nemůže být proměnnou redukce v uzavřeném kontextu. |
| Chyba kompilátoru C3039 | Identifikátor: Proměnná indexu v příkazu OpenMP for nemůže být proměnnou redukce. |
| Chyba kompilátoru C3040 | 'identifier': typ proměnné v klauzuli reduction není kompatibilní s operátorem redukce "operator" |
| Chyba kompilátoru C3041 | 'identifier': proměnná v klauzuli copyprivate musí být privátní v uzavřeném kontextu. |
| Chyba kompilátoru C3042 | Klauzule copyprivate a nowait se v direktivě OpenMP "direktiva" nemůže objevit společně. |
| Chyba kompilátoru C3043 | Direktiva OpenMP critical nejde vnořit do direktivy critical se stejným názvem. |
| Chyba kompilátoru C3044 | 'section': Povoleno pouze přímo vnořené pod direktivou OpenMP sections |
| Chyba kompilátoru C3045 | Byl očekávány složené příkazy podle direktivy OpenMP sections. Chybí {. |
| Chyba kompilátoru C3046 | Chybějící strukturovaný blok v oblasti openmp "#pragma omp" |
| Chyba kompilátoru C3047 | Strukturovaný blok v oblasti oddílů OpenMP musí předcházet oddílu #pragma omp (zastaralé v sadě Visual Studio 2022).) |
| Chyba kompilátoru C3048 | Výraz následující za "#pragma omp atomic" má nesprávný tvar |
| Chyba kompilátoru C3049 | 'argument': neplatný argument v klauzuli OpenMP default |
| Chyba kompilátoru C3050 | 'class': Třída ref nemůže dědit z identifikátoru. |
| Chyba kompilátoru C3051 | Zastaralé. |
| Chyba kompilátoru C3052 | 'identifier': Proměnná se nezobrazuje v klauzuli sdílení dat v klauzuli default(none) |
| Chyba kompilátoru C3053 | Identifikátor: Threadprivate je platný pouze pro globální nebo statické datové položky. |
| Chyba kompilátoru C3054 | "#pragma omp parallel" se v současné době nepodporuje v obecné třídě nebo funkci (zastaralé v sadě Visual Studio 2022.) |
| Chyba kompilátoru C3055 | 'identifier': symbol nelze odkazovat před jeho použití v direktivě threadprivate. |
| Chyba kompilátoru C3056 | 'identifier': symbol není ve stejném oboru s direktivou threadprivate. |
| Chyba kompilátoru C3057 | Identifikátor: Dynamická inicializace symbolů threadprivate se v současné době nepodporuje. |
| Chyba kompilátoru C3058 | 'identifier': symbol není deklarován jako "threadprivate", než se použije v klauzuli 'copyin'. |
| Chyba kompilátoru C3059 | 'identifier': Symbol threadprivate nelze použít v klauzuli klauzule |
| Chyba kompilátoru C3060 | 'identifier': Přátelská funkce nemusí být definována uvnitř třídy s použitím kvalifikovaného názvu (může být deklarována pouze) |
| Chyba kompilátoru C3061 | operator 'operator': not allowed on enumeration 'type' with underlying type 'type' |
| Chyba kompilátoru C3062 | 'identifier': Enumerator vyžaduje hodnotu, protože podkladový typ je "type" |
| Chyba kompilátoru C3063 | operator 'operator': všechny operandy musí mít stejný typ výčtu. |
| Chyba kompilátoru C3064 | Identifikátor: musí být jednoduchý typ nebo přeložit na jeden |
| Chyba kompilátoru C3065 | Deklarace vlastnosti v oboru mimo třídu není povolena. |
| Chyba kompilátoru C3066 | existuje několik způsobů, jak lze objekt tohoto typu volat pomocí těchto argumentů. |
| Chyba kompilátoru C3067 | seznam inicializátorů nelze použít s integrovaným operátorem[] |
| Chyba kompilátoru C3068 | Identifikátor: Funkce "naked" nemůže obsahovat objekty, které by vyžadovaly odvíjení, pokud došlo k výjimce jazyka C++. |
| Chyba kompilátoru C3069 | operator 'operator': not allowed for enumeration type |
| Chyba kompilátoru C3070 | Identifikátor: vlastnost nemá metodu set. |
| Chyba kompilátoru C3071 | operátor 'operator' lze použít pouze na instanci třídy ref nebo typu value. |
| Chyba kompilátoru C3072 | operátor "operator" nelze použít u instance třídy ref pomocí unárního operátoru %, který převede instanci třídy ref na typ popisovače. |
| Chyba kompilátoru C3073 | 'identifier': Ref class nemá uživatelem definovaný konstruktor kopírování. |
| Chyba kompilátoru C3074 | Pole nelze inicializovat pomocí inicializátoru se závorkou. |
| Chyba kompilátoru C3075 | Identifikátor: Nelze vložit instanci referenčního typu "type" do typu hodnoty. |
| Chyba kompilátoru C3076 | 'identifier': Nelze vložit instanci typu odkazu , 'type', do nativního typu. |
| Chyba kompilátoru C3077 | 'identifikátor': Finalizátor může být pouze členem referenčního typu. |
| Chyba kompilátoru C3078 | Velikost pole musí být zadána v nových výrazech. |
| Chyba kompilátoru C3079 | Nelze použít seznam inicializátorů jako správný operand tohoto operátoru přiřazení. |
| Chyba kompilátoru C3080 | Finalizátor: Finalizátor nemůže mít specifikátor třídy úložiště. |
| Chyba kompilátoru C3081 | Zastaralé. |
| Chyba kompilátoru C3082 | Zastaralé. |
| Chyba kompilátoru C3083 | 'identifier': symbol vlevo od znaku ::' musí být typ. |
| Chyba kompilátoru C3084 | Identifikátor: Destruktor/finalizátor nemůže být klíčové slovo. |
| Chyba kompilátoru C3085 | Identifikátor: konstruktor nemůže být klíčové slovo. |
| Chyba kompilátoru C3086 | nelze najít std::initializer_list: Potřebujete #include <initializer_list> |
| Chyba kompilátoru C3087 | Identifikátor: volání deklarace již inicializuje tohoto člena. |
| Chyba kompilátoru C3088 | 'class': konstruktor atributu musí mít pojmenované formální argumenty. |
| Chyba kompilátoru C3089 | Identifikátor: Název parametru neodpovídá názvu žádného datového člena. |
| Chyba kompilátoru C3090 | 'class': Třída atributu nemůže být šablona |
| Chyba kompilátoru C3091 | 'class': Třída atributu nemůže mít základní třídy. |
| Chyba kompilátoru C3092 | 'class': člen třídy atributu nemůže být bitové pole, statická nebo const. |
| Chyba kompilátoru C3093 | 'type': typ není povolený pro člen třídy atributu member 'member' |
| Chyba kompilátoru C3094 | Atribut: Anonymní použití není povoleno. |
| Chyba kompilátoru C3095 | Atribut: atribut nelze opakovat. |
| Chyba kompilátoru C3096 | 'attribute': atribut je povolen pouze u datových členů tříd atributů. |
| Chyba kompilátoru C3097 | 'attribute': atribut musí být vymezen 'assembly:' nebo 'module:' |
| Chyba kompilátoru C3098 | 'identifier': atribut nemá žádné uživatelem definované konstruktory |
| Chyba kompilátoru C3099 | 'keyword': use [System::AttributeUsageAttribute]/[Windows::Foundation::Metadata::AttributeUsageAttribute] pro atributy managed/WinRT |
Viz také
Chyby a upozornění kompilátoru C/C++ a nástrojů sestavení
Chyby kompilátoru C2000 – C3999, C7000 – C7999