Condividi tramite


Errori del compilatore da C3000 a C3099

Gli articoli in questa sezione della documentazione illustrano un subset dei messaggi di errore generati dal compilatore.

Importante

I compilatori e gli strumenti di compilazione di Visual Studio possono segnalare molti tipi di errori e avvisi. Dopo aver trovato un errore o un avviso, gli strumenti di compilazione possono fare ipotesi sulla finalità del codice e tentare di continuare, in modo che più problemi possano essere segnalati contemporaneamente. Se la supposizione degli strumenti non è corretta, gli errori o avvisi successivi potrebbero non essere applicabili al progetto. Quando si correggono i problemi nel progetto, iniziare sempre con il primo errore o avviso restituito e ricompilare spesso. Una correzione può causare la scomparsa di molti errori successivi.

Per ottenere informazioni su un messaggio di diagnostica specifico in Visual Studio, selezionarlo nella finestra Output e premere F1. Visual Studio apre la pagina della documentazione per tale errore, se presente. È anche possibile usare lo strumento di ricerca nella parte superiore della pagina per trovare articoli su errori o avvisi specifici. In alternativa, esplorare l'elenco di errori e avvisi per strumento e digitare il sommario in questa pagina.

Nota

Non tutti gli errori o gli avvisi di Visual Studio sono documentati. In molti casi, il messaggio di diagnostica fornisce tutte le informazioni disponibili. Se sei arrivato in questa pagina quando hai usato F1 e pensi che il messaggio di errore o avviso richieda spiegazioni aggiuntive, comunicaci. È possibile usare i pulsanti di feedback in questa pagina per generare un problema di documentazione in GitHub. Se si ritiene che l'errore o l'avviso non sia corretto o si è riscontrato un altro problema con il set di strumenti, segnalare un problema di prodotto nel sito Della community degli sviluppatori. È anche possibile inviare commenti e suggerimenti e immettere bug nell'IDE. In Visual Studio passare alla barra dei menu e scegliere Guida > Per inviare commenti e > suggerimenti segnala un problema oppure inviare un suggerimento usando La Guida > invia > commenti e suggerimenti Invia un suggerimento. Alcuni argomenti relativi agli errori del compilatore sono stati creati che non vengono generati dal compilatore e ora reindirizzano a questa pagina.

È possibile trovare ulteriore assistenza per errori e avvisi nei forum di domande e risposte di Microsoft Learn. In alternativa, cercare il numero di errore o di avviso nel sito della community degli sviluppatori di Visual Studio C++. È anche possibile cercare Stack Overflow per trovare soluzioni.

Per i collegamenti ad altre risorse della Guida e della community, vedere Guida e community di Visual C++.

Messaggi di errore

Error Messaggio
Errore del compilatore C3000 'symbol': l'uso del modello di classe richiede l'elenco di argomenti del modello. La deduzione degli argomenti non è consentita nel membro dati non statico.
Errore del compilatore C3001 'message': previsto un nome di direttiva OpenMP
Errore del compilatore C3002 'name1 name2': più nomi di direttiva OpenMP
Errore del compilatore C3003 'directive': il nome della direttiva OpenMP non è consentito dopo le clausole di direttiva
Errore del compilatore C3004 'clause': clausola non valida nella direttiva 'directive' OpenMP
Errore del compilatore C3005 'message': token imprevisto rilevato nella direttiva 'directive' OpenMP
Errore del compilatore C3006 'clause': clausola nella direttiva 'directive' OpenMP manca un argomento previsto
Errore del compilatore C3007 'clause': la clausola nella direttiva 'directive' OpenMP non accetta un argomento
Errore del compilatore C3008 'argument': argomento mancante di chiusura ')' nella direttiva 'directive' OpenMP
Errore del compilatore C3009 'label': passare al blocco strutturato OpenMP non consentito
Errore del compilatore C3010 'label': salto dal blocco strutturato OpenMP non consentito
Errore del compilatore C3011 assembly inline non consentito direttamente in un'area parallela
Errore del compilatore C3012 'function': funzione intrinseca non consentita direttamente all'interno di un'area parallela
Errore del compilatore C3013 'clause': la clausola può essere visualizzata una sola volta nella direttiva 'directive' OpenMP
Errore del compilatore C3014 previsto un ciclo for dopo la direttiva 'directive' OpenMP
Errore del compilatore C3015 l'inizializzazione nell'istruzione 'for' OpenMP non ha un formato valido
Errore del compilatore C3016 'identifier': la variabile di indice nell'istruzione 'for' OpenMP deve avere un tipo integrale con segno
Errore del compilatore C3017 il formato del test di terminazione nell'istruzione 'for' OpenMP non è valido
Errore del compilatore C3018 'identifier': il test o l'incremento di OpenMP 'for' devono usare la variabile di indice 'variable'
Errore del compilatore C3019 l'incremento nell'istruzione 'for' OpenMP non è corretto
Errore del compilatore C3020 'variable': variabile di indice del ciclo 'for' OpenMP non può essere modificata nel corpo del ciclo
Errore del compilatore C3021 'argument': l'argomento è vuoto nella direttiva 'directive' OpenMP
Errore del compilatore C3022 'directive': tipo di pianificazione 'directive' non valido nella direttiva 'directive' OpenMP
Errore del compilatore C3023 'argument': token imprevisto rilevato nell'argomento della clausola 'directive' OpenMP
Errore del compilatore C3024 'schedule(runtime)': chunk_size expression is not allowed
Errore del compilatore C3025 'clause': espressione integrale prevista
Errore del compilatore C3026 'clause': l'espressione costante deve essere positiva
Errore del compilatore C3027 'clause': espressione aritmetica o puntatore prevista
Errore del compilatore C3028 'member': solo una variabile o un membro dati statico può essere usato in una clausola di condivisione dati
Errore del compilatore C3029 'symbol': può essere visualizzato una sola volta nelle clausole di condivisione dei dati in una direttiva OpenMP
Errore del compilatore C3030 'identifier': la variabile nella clausola /direttiva 'directive' non può avere un tipo riferimento
Errore del compilatore C3031 'identifier': la variabile nella clausola 'reduction' deve avere un tipo aritmetico scalare
Errore del compilatore C3032 'identifier': la variabile nella clausola 'clause' non può avere un tipo incompleto 'type'
Errore del compilatore C3033 'identifier': la variabile nella clausola 'clause' non può avere un tipo qualificato const
Errore del compilatore C3034 La direttiva 'directive' OpenMP non può essere annidata direttamente all'interno della direttiva 'directive'
Errore del compilatore C3035 la direttiva 'ordered' OpenMP deve essere associata direttamente a una direttiva 'for' o 'parallel for' con la clausola 'ordered'
Errore del compilatore C3036 'clause': token di operatore non valido nella clausola 'reduction' OpenMP
Errore del compilatore C3037 'identifier': la variabile nella clausola 'clause' deve essere condivisa nel contesto di inclusione
Errore del compilatore C3038 'identifier': la variabile nella clausola 'private' non può essere una variabile di riduzione nel contesto di inclusione
Errore del compilatore C3039 'identifier': variabile di indice nell'istruzione 'for' OpenMP non può essere una variabile di riduzione
Errore del compilatore C3040 'identifier': il tipo di variabile nella clausola 'reduction' non è compatibile con l'operatore di riduzione 'operator'
Errore del compilatore C3041 'identifier': la variabile nella clausola 'copyprivate' deve essere privata nel contesto di inclusione
Errore del compilatore C3042 Le clausole 'copyprivate' e 'nowait' non possono essere visualizzate insieme nella direttiva 'directive' OpenMP
Errore del compilatore C3043 la direttiva 'critical' OpenMP non può essere annidata in una direttiva 'critical' con lo stesso nome
Errore del compilatore C3044 'section': consentita solo direttamente annidata in una direttiva 'sections' OpenMP
Errore del compilatore C3045 Prevista un'istruzione composta dopo la direttiva 'sections' OpenMP seguente. '{' mancante
Errore del compilatore C3046 Blocco strutturato mancante in un'area '#pragma omp sections' OpenMP
Errore del compilatore C3047 Il blocco strutturato in un'area 'sections' OpenMP deve essere preceduto da '#pragma sezione omp' (obsoleto in Visual Studio 2022).
Errore del compilatore C3048 Formato non valido dell'espressione successiva a '#pragma omp atomic'
Errore del compilatore C3049 'argument': argomento non valido nella clausola 'default' OpenMP
Errore del compilatore C3050 'class': una classe ref non può ereditare da 'identifier'
Errore del compilatore C3051 Obsoleta.
Errore del compilatore C3052 'identifier': la variabile non viene visualizzata in una clausola di condivisione dati in una clausola default(none)
Errore del compilatore C3053 'identifier': 'threadprivate' è valido solo per gli elementi di dati globali o statici
Errore del compilatore C3054 '#pragma parallel omp' non è attualmente supportato in una classe o una funzione generica (obsoleto in Visual Studio 2022).
Errore del compilatore C3055 'identifier': il simbolo non può essere fatto riferimento prima che venga usato nella direttiva 'threadprivate'
Errore del compilatore C3056 'identifier': il simbolo non si trova nello stesso ambito con la direttiva 'threadprivate'
Errore del compilatore C3057 'identifier': l'inizializzazione dinamica dei simboli 'threadprivate' non è attualmente supportata
Errore del compilatore C3058 'identifier': simbolo non dichiarato come 'threadprivate' prima che venga usato nella clausola 'copyin'
Errore del compilatore C3059 'identifier': 'threadprivate' symbol cannot be used in the 'clause' clause'
Errore del compilatore C3060 'identifier': una funzione friend non può essere definita all'interno di una classe usando un nome completo (può essere dichiarata solo)
Errore del compilatore C3061 operatore 'operator': non consentito nell'enumerazione 'type' con tipo sottostante 'type'
Errore del compilatore C3062 'identifier': l'enumeratore richiede un valore perché il tipo sottostante è 'type'
Errore del compilatore C3063 operatore 'operator': tutti gli operandi devono avere lo stesso tipo di enumerazione
Errore del compilatore C3064 'identifier': deve essere un tipo semplice o risolto in uno
Errore del compilatore C3065 la dichiarazione di proprietà in ambito non di classe non è consentita
Errore del compilatore C3066 esistono diversi modi in cui un oggetto di questo tipo può essere chiamato con questi argomenti
Errore del compilatore C3067 Non è possibile usare un elenco di inizializzatori con l'operatore predefinito[]
Errore del compilatore C3068 'identifier': una funzione 'naked' non può contenere oggetti che richiedono la rimozione se si è verificata un'eccezione C++
Errore del compilatore C3069 operatore 'operator': non consentito per il tipo di enumerazione
Errore del compilatore C3070 'identifier': la proprietà non dispone di un metodo 'set'
Errore del compilatore C3071 L'operatore 'operator' può essere applicato solo a un'istanza di una classe ref o a un tipo valore
Errore del compilatore C3072 Impossibile applicare l'operatore 'operator' a un'istanza di una classe ref utilizzando l'operatore unario '%' per convertire un'istanza di una classe ref in un tipo handle
Errore del compilatore C3073 'identifier': la classe ref non dispone di un costruttore di copia definito dall'utente
Errore del compilatore C3074 Non è possibile inizializzare una matrice con un inizializzatore tra parentesi
Errore del compilatore C3075 'identifier': non è possibile incorporare un'istanza di un tipo riferimento, 'type', in un tipo valore
Errore del compilatore C3076 'identifier': non è possibile incorporare un'istanza di un tipo riferimento, 'type', in un tipo nativo
Errore del compilatore C3077 'identifier': un finalizzatore può essere solo un membro di un tipo riferimento
Errore del compilatore C3078 Le dimensioni della matrice devono essere specificate nelle nuove espressioni
Errore del compilatore C3079 Un elenco di inizializzatori non può essere utilizzato come operando destro di questo operatore di assegnazione
Errore del compilatore C3080 'finalizzatore': un finalizzatore non può avere un identificatore di classe di archiviazione
Errore del compilatore C3081 Obsoleta.
Errore del compilatore C3082 Obsoleta.
Errore del compilatore C3083 'identifier': il simbolo a sinistra di un '::' deve essere un tipo
Errore del compilatore C3084 'identifier': un distruttore/finalizzatore non può essere 'keyword'
Errore del compilatore C3085 'identifier': un costruttore non può essere 'keyword'
Errore del compilatore C3086 impossibile trovare 'std::initializer_list': è necessario #include initializer_list <>
Errore del compilatore C3087 'identifier': chiamata di 'declaration' già inizializza questo membro
Errore del compilatore C3088 'class': il costruttore dell'attributo deve avere argomenti formali denominati
Errore del compilatore C3089 'identifier': il nome del parametro non corrisponde al nome di un membro dati
Errore del compilatore C3090 'class': la classe attribute non può essere un modello
Errore del compilatore C3091 'class': la classe attribute non può avere classi di base
Errore del compilatore C3092 'class': il membro della classe attributo non può essere un campo bit, 'static' o 'const'
Errore del compilatore C3093 'type': tipo non consentito per il membro della classe attributo 'member'
Errore del compilatore C3094 'attribute': utilizzo anonimo non consentito
Errore del compilatore C3095 'attribute': l'attributo non può essere ripetuto
Errore del compilatore C3096 'attribute': l'attributo è consentito solo nei membri dati delle classi di attributi
Errore del compilatore C3097 'attribute': l'attributo deve essere con ambito 'assembly:' o 'module:'
Errore del compilatore C3098 'identifier': l'attributo non ha costruttori definiti dall'utente
Errore del compilatore C3099 'keyword': usare [System::AttributeUsageAttribute]/[Windows::Foundation::Metadata::AttributeUsageAttribute] per attributi gestiti/WinRT

Vedi anche

Errori e avvisi del compilatore C/C++ e degli strumenti di compilazione
Errori del compilatore C2000 - C3999, C7000 - C7999