Errori del compilatore da C3100 a C3199
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 C3100 | 'identifier': qualificatore di attributo sconosciuto |
Errore del compilatore C3101 | espressione non valida per l'argomento attributo denominato 'identifier' |
Errore del compilatore C3102 | Obsoleta. |
Errore del compilatore C3103 | 'identifier': argomento denominato ripetuto |
Errore del compilatore C3104 | argomento attributo non valido |
Errore del compilatore C3105 | 'symbol': non può essere usato come attributo |
Errore del compilatore C3106 | 'attribute': gli argomenti senza nome devono precedere gli argomenti denominati |
Errore del compilatore C3107 | 'attribute': non è possibile definire le funzioni membro degli attributi nativi |
Errore del compilatore C3108 | impossibile dedurre un tipo come elenco di inizializzatori non è un'espressione |
Errore del compilatore C3109 | 'identifier': i metodi di interfaccia devono usare la convenzione di chiamata '__stdcall' o '__cdecl' |
Errore del compilatore C3110 | 'function': non è possibile eseguire l'overload di un metodo di interfaccia COM |
Errore del compilatore C3111 | Non è possibile usare un elenco di inizializzatori come argomento predefinito per un parametro di modello |
Errore del compilatore C3112 | 'interface': un'interfaccia può essere dichiarata solo nell'ambito globale o dello spazio dei nomi |
Errore del compilatore C3113 | un 'interface/enum' non può essere un modello/generico |
Errore del compilatore C3114 | 'identifier': non un argomento di attributo denominato valido |
Errore del compilatore C3115 | 'attribute': questo attributo non è consentito in 'construct' |
Errore del compilatore C3116 | 'specifier': classe di archiviazione non valida per il metodo di interfaccia |
Errore del compilatore C3117 | 'interface': un'interfaccia può avere una sola classe di base |
Errore del compilatore C3118 | 'interface': le interfacce non supportano l'ereditarietà virtuale |
Errore del compilatore C3119 | alignas(void) non è consentito |
Errore del compilatore C3120 | 'identifier': i metodi di interfaccia non possono accettare un elenco di argomenti variabile |
Errore del compilatore C3121 | impossibile modificare il GUID per la classe 'class' |
Errore del compilatore C3122 | 'interface': un'interfaccia generica WinRT non può avere GUID |
Errore del compilatore C3123 | L'interfaccia generica WinRT non può avere vincoli |
Errore del compilatore C3124 | 'signed char' non è un tipo di dati WinRT valido. Usare invece 'unsigned char', 'wchar_t' o 'signed short'. |
Errore del compilatore C3125 | 'type': il tipo non può derivare direttamente o indirettamente da 'Platform::Exception' |
Errore del compilatore C3126 | impossibile definire un'unione 'union' all'interno del tipo gestito/WinRT 'type' |
Errore del compilatore C3127 | 'type': il tratto 'trait' può essere usato solo in una classe di riferimento WinRT |
Errore del compilatore C3128 | 'type' non dispone di una tabella virtuale introdotta da 'type' |
Errore del compilatore C3129 | 'type': __default_vptr_for_base può essere usato solo su tipi e basi polimorfici definiti localmente |
Errore del compilatore C3130 | Errore interno del compilatore: impossibile scrivere il blocco di codice inserito in PDB |
Errore del compilatore C3131 | il progetto deve avere un attributo 'module' con una proprietà 'name' |
Errore del compilatore C3132 | 'parameter': le matrici di parametri possono essere applicate solo a un argomento formale di tipo 'matrice gestita/WinRT a dimensione singola' |
Errore del compilatore C3133 | Gli attributi non possono essere applicati ai vararg C++ |
Errore del compilatore C3134 | 'value': il valore dell'argomento attributo 'argument' non ha un tipo valido 'type' |
Errore del compilatore C3135 | 'identifier': una proprietà non può avere un tipo 'const' o 'volatile' |
Errore del compilatore C3136 | 'interface': un'interfaccia COM può ereditare solo da un'altra interfaccia COM, 'interface' non è un'interfaccia COM |
Errore del compilatore C3137 | 'identifier': impossibile inizializzare una proprietà |
Errore del compilatore C3138 | 'identifier': un'interfaccia 'attribute' deve ereditare da IDispatch o da un'interfaccia che eredita da IDispatch |
Errore del compilatore C3139 | 'type': impossibile esportare un tipo definito dall'utente senza membri |
Errore del compilatore C3140 | non può avere più attributi 'module' nella stessa unità di compilazione |
Errore del compilatore C3141 | 'interface': le interfacce supportano solo l'ereditarietà pubblica |
Errore del compilatore C3142 | 'property': non è possibile accettare l'indirizzo di una proprietà |
Errore del compilatore C3143 | 'argument': l'argomento attributo non può avere più valori |
Errore del compilatore C3144 | 'attribute': l'attributo richiede argomenti espliciti, 'argument' è senza nome |
Errore del compilatore C3145 | 'identifier': variabile globale o statica potrebbe non avere il tipo gestito/WinRT 'type' |
Errore del compilatore C3146 | Obsoleta. |
Errore del compilatore C3147 | Obsoleta. |
Errore del compilatore C3148 | Obsoleta. |
Errore del compilatore C3149 | 'type': impossibile usare questo tipo qui senza un 'token' di primo livello |
Errore del compilatore C3150 | 'construct': 'attribute' può essere applicato solo a una classe, uno struct, un'interfaccia, una matrice o un puntatore |
Errore del compilatore C3151 | Obsoleta. |
Errore del compilatore C3152 | 'function': 'keyword' può essere applicato solo a una classe, uno struct o una funzione membro virtuale |
Errore del compilatore C3153 | 'interface': non è possibile creare un'istanza di un'interfaccia |
Errore del compilatore C3154 | Previsto ',' prima dei puntini di sospensione. I puntini di sospensione non delimitati da virgole non sono supportati nelle funzioni della matrice di parametri. |
Errore del compilatore C3155 | Gli attributi non sono consentiti in un indicizzatore di proprietà |
Errore del compilatore C3156 | 'class': non è possibile avere una definizione locale di un tipo gestito/WinRT |
Errore del compilatore C3157 | L'attributo ParamArray può essere applicato solo all'ultimo parametro |
Errore del compilatore C3158 | 'function': 'keyword' può essere applicato solo a una funzione membro virtuale |
Errore del compilatore C3159 | 'identifier': matrice di puntatori al tipo valore non può essere dichiarata |
Errore del compilatore C3160 | 'type': un membro dati di una classe gestita/WinRT non può avere questo tipo |
Errore del compilatore C3161 | 'interface': la classe di annidamento, lo struct o l'interfaccia in un'interfaccia non è valida. L'interfaccia di annidamento in una classe o uno struct non è valida |
Errore del compilatore C3162 | 'type': un tipo di riferimento con un distruttore non può essere utilizzato come tipo di membro dati statico 'member' |
Errore del compilatore C3163 | 'class': attributi incoerenti alla dichiarazione precedente |
Errore del compilatore C3164 | Obsoleta. |
Errore del compilatore C3165 | 'value': impossibile convertire in un valore integrale o a virgola mobile |
Errore del compilatore C3166 | Obsoleta. 'type': un membro dati di una classe gestita/WinRT non può avere il tipo 'pointer_type all'interno managed_pointer_type' |
Errore del compilatore C3167 | Non è possibile inizializzare .NET Framework: assicurarsi che sia installato |
Errore del compilatore C3168 | 'type': tipo sottostante non valido per l'enumerazione |
Errore del compilatore C3169 | 'type': impossibile dedurre il tipo per 'auto' da 'type' |
Errore del compilatore C3170 | non può avere identificatori di modulo diversi in un progetto |
Errore del compilatore C3171 | 'module': impossibile specificare attributi di modulo diversi in un progetto |
Errore del compilatore C3172 | 'identifier': impossibile specificare attributi di idl_module diversi in un progetto |
Errore del compilatore C3173 | mancata corrispondenza della versione nell'unione idl |
Errore del compilatore C3174 | L'attributo module non è stato specificato |
Errore del compilatore C3175 | 'function': impossibile chiamare un metodo di un tipo gestito dalla funzione non gestita 'function' |
Errore del compilatore C3176 | 'type': impossibile dichiarare il tipo di valore locale |
Errore del compilatore C3177 | Non è possibile avere una funzione di conversione in un tipo che contiene "type" (obsoleto in Visual Studio 2022). |
Errore del compilatore C3178 | 'type': impossibile usare ParamArray in una funzione con argomenti predefiniti (obsoleto in Visual Studio 2022). |
Errore del compilatore C3179 | Non è consentito un tipo gestito/WinRT senza nome |
Errore del compilatore C3180 | 'type': il nome supera il limite di metadati dei caratteri 'number' |
Errore del compilatore C3181 | 'type': operando non valido per l'operatore |
Errore del compilatore C3182 | 'type': un membro che usa dichiarazione o dichiarazione di accesso non è valido all'interno di un tipo gestito/WinRT |
Errore del compilatore C3183 | non può definire una classe, uno struct o un'unione senza nome all'interno del tipo gestito/WinRT 'class' |
Errore del compilatore C3184 | Obsoleta. |
Errore del compilatore C3185 | 'typeid': usato nel tipo gestito/WinRT 'type', usare invece 'operator' |
Errore del compilatore C3186 | Obsoleta. |
Errore del compilatore C3187 | 'identifier': è disponibile solo all'interno del corpo di una funzione |
Errore del compilatore C3188 | Obsoleta. |
Errore del compilatore C3189 | 'typeid<declarator>': questa sintassi non è più supportata, use::typeid (obsoleto in Visual Studio 2022). |
Errore del compilatore C3190 | 'declarator' con gli argomenti del modello forniti non è la creazione esplicita di un'istanza di qualsiasi funzione membro di 'type' |
Errore del compilatore C3191 | Obsoleta. |
Errore del compilatore C3192 | errore di sintassi: '^' non è un operatore prefisso (significa '*'?) |
Errore del compilatore C3193 | 'construct': richiede l'opzione della riga di comando '/clr' o '/ZW' |
Errore del compilatore C3194 | 'type': un tipo valore non può avere un operatore di assegnazione |
Errore del compilatore C3195 | 'keyword': è riservato e non può essere usato come membro di una classe ref o di un tipo valore. Gli operatori CLR/WinRT devono essere definiti usando la parola chiave 'operator' |
Errore del compilatore C3196 | 'identifier': usato più volte |
Errore del compilatore C3197 | 'keyword': può essere usato solo nelle definizioni |
Errore del compilatore C3198 | uso non valido di pragma a virgola mobile: fenv_access pragma funziona solo in modalità precisa |
Errore del compilatore C3199 | uso non valido di pragma a virgola mobile: le eccezioni non sono supportate in modalità non precisa |
Vedi anche
Errori e avvisi del compilatore C/C++ e degli strumenti di compilazione
Errori del compilatore C2000 - C3999, C7000 - C7999