Sdílet prostřednictvím


Chyby kompilátoru C3000 až C3099

Č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