Errori del compilatore da C2300 a C2399
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 C2300 | 'class': la classe non dispone di un distruttore denominato '~class' |
Errore del compilatore C2301 | a sinistra di '->~identifier' deve puntare a class/struct/union |
Errore del compilatore C2302 | a sinistra di '.~identifier' deve essere di tipo class/struct/union |
Errore del compilatore C2303 | La gestione strutturata delle eccezioni non può essere usata in una coroutine |
Errore del compilatore C2304 | 'keyword' non può essere usato all'interno di un blocco catch |
Errore del compilatore C2305 | 'file' non contiene informazioni di debug per questo modulo |
Errore del compilatore C2306 | 'file' non contiene le informazioni di debug più recenti per questo modulo |
Errore del compilatore C2307 | La direttiva pragma deve essere spostata all'esterno della funzione se la compilazione incrementale è abilitata |
Errore del compilatore C2308 | concatenazione di stringhe non corrispondenti |
Errore del compilatore C2309 | Il gestore catch prevedeva una dichiarazione di eccezione racchiusa tra parentesi |
Errore del compilatore C2310 | I gestori catch devono specificare un tipo |
Errore del compilatore C2311 | 'type': viene intercettato da '...' numero di riga |
Errore del compilatore C2312 | 'type1': viene intercettata da 'type2' sul numero di riga |
Errore del compilatore C2313 | 'type1': viene intercettata per riferimento ('type2') sul numero di riga |
Errore del compilatore C2314 | parola chiave 'keyword1' è deprecata: usare invece 'keyword2' |
Errore del compilatore C2315 | 'type1': il riferimento viene intercettato da 'type2' sul numero di riga |
Errore del compilatore C2316 | 'type': impossibile intercettato come distruttore e/o costruttore di copia non accessibile o eliminato |
Errore del compilatore C2317 | Il blocco 'try' a partire dalla riga 'number' non dispone di gestori catch |
Errore del compilatore C2318 | nessun blocco try associato a questo gestore catch |
Errore del compilatore C2319 | 'try/catch' deve essere seguito da un'istruzione composta. '{' mancante |
Errore del compilatore C2320 | previsto ':' per seguire l'identificatore di accesso 'identificatore' |
Errore del compilatore C2321 | 'identifier' è una parola chiave e non può essere usata in questo contesto |
Errore del compilatore C2322 | 'identifier': l'indirizzo di dllimport 'identifier' non è statico |
Errore del compilatore C2323 | 'identifier': le funzioni nuove o delete dell'operatore non membro non possono essere dichiarate statiche o in uno spazio dei nomi diverso dallo spazio dei nomi globale |
Errore del compilatore C2324 | 'identifier': imprevisto a destra di '::~' |
Errore del compilatore C2325 | 'type1': tipo imprevisto a destra di '->~': previsto 'type2' |
Errore del compilatore C2326 | 'declarator': la funzione non può accedere a 'identifier' |
Errore del compilatore C2327 | 'identifier': non è un nome di tipo, statico o enumeratore |
Errore del compilatore C2328 | 'keyword': parola chiave non ancora supportata |
Errore del compilatore C2329 | 'identifier': __ptr64 non disponibile per i puntatori alle funzioni |
Errore del compilatore C2330 | 'implementation_key( )' è valido solo in un'area vincolata da #pragma start_map_region/stop_map_region |
Errore del compilatore C2331 | l'accesso a 'identifier' ora definito come 'accessibility1', in precedenza era definito come 'accessibility2' |
Errore del compilatore C2332 | 'typedef': nome tag mancante |
Errore del compilatore C2333 | 'function': error in function declaration; skipping function body |
Errore del compilatore C2334 | token imprevisti precedenti a 'token'; ignorando il corpo della funzione apparente |
Errore del compilatore C2335 | 'identifier': un tipo non può essere introdotto in un elenco di parametri di funzione |
Errore del compilatore C2336 | 'type': tipo non valido |
Errore del compilatore C2337 | 'attribute': attributo non trovato |
Errore del compilatore C2338 | (messaggio di errore dal provider esterno) |
Errore del compilatore C2339 | 'identifier': tipo non valido in embedded-IDL |
Errore del compilatore C2340 | 'identifier': 'static' può essere usato solo all'interno di una definizione di classe |
Errore del compilatore C2341 | 'section': il segmento deve essere definito usando #pragma data_seg, code_seg o sezione prima di usare |
Errore del compilatore C2342 | errore di sintassi: qualificatori di tipo in conflitto |
Errore del compilatore C2343 | 'section': attributi di sezione in conflitto |
Errore del compilatore C2344 | align(number): l'allineamento deve essere di potenza di due |
Errore del compilatore C2345 | align(number): valore di allineamento non valido |
Errore del compilatore C2346 | 'function' non può essere compilato come nativo: 'spiegazione' |
Errore del compilatore C2347 | Obsoleta. |
Errore del compilatore C2348 | 'type': non è un'aggregazione in stile C, non può essere esportata in IDL incorporato |
Errore del compilatore C2349 | 'function' non può essere compilato come gestito: 'spiegazione'; usare #pragma non gestito |
Errore del compilatore C2350 | 'identifier' non è un membro statico |
Errore del compilatore C2351 | sintassi di inizializzazione del costruttore C++ obsoleta |
Errore del compilatore C2352 | 'identifier': chiamata non valida della funzione membro non statica |
Errore del compilatore C2353 | specifica dell'eccezione non consentita |
Errore del compilatore C2354 | Obsoleta. |
Errore del compilatore C2355 | 'this': può essere fatto riferimento solo all'interno di funzioni membro non statiche o inizializzatori di membri dati non statici |
Errore del compilatore C2356 | il segmento di inizializzazione non deve cambiare durante l'unità di conversione |
Errore del compilatore C2357 | 'identifier': deve essere una funzione di tipo 'type' |
Errore del compilatore C2358 | 'identifier': una proprietà statica non può essere definita all'esterno di una definizione di classe |
Errore del compilatore C2359 | Obsoleta. |
Errore del compilatore C2360 | l'inizializzazione di 'identifier' viene ignorata dall'etichetta 'case' |
Errore del compilatore C2361 | l'inizializzazione di 'identifier' viene ignorata dall'etichetta 'default' |
Errore del compilatore C2362 | l'inizializzazione di 'identifier' viene ignorata da 'goto label' |
Errore del compilatore C2363 | La funzione del limite numerico intrinseco del compilatore richiede un argomento letterale stringa |
Errore del compilatore C2364 | 'type': tipo non valido per l'attributo personalizzato |
Errore del compilatore C2365 | 'member1': ridefinizione; la definizione precedente era 'member2' |
Errore del compilatore C2366 | 'identifier': ridefinizione; identificatori di implementation_key diversi |
Errore del compilatore C2367 | Obsoleta. |
Errore del compilatore C2368 | 'identifier': ridefinizione; identificatori di allocazione diversi |
Errore del compilatore C2369 | 'identifier': ridefinizione; pedice diversi |
Errore del compilatore C2370 | 'identifier': ridefinizione; classe di archiviazione diversa |
Errore del compilatore C2371 | 'identifier': ridefinizione; tipi di base diversi |
Errore del compilatore C2372 | 'identifier': ridefinizione; tipi diversi di riferimento indiretto |
Errore del compilatore C2373 | 'identifier': ridefinizione; modificatori di tipo diversi |
Errore del compilatore C2374 | 'identifier': ridefinizione; inizializzazione multipla |
Errore del compilatore C2375 | 'identifier': ridefinizione; collegamento diverso |
Errore del compilatore C2376 | 'identifier': ridefinizione; allocazione in base diversa |
Errore del compilatore C2377 | 'identifier': ridefinizione; typedef non può essere sottoposto a overload con qualsiasi altro simbolo |
Errore del compilatore C2378 | 'identifier': ridefinizione; il simbolo non può essere sottoposto a overload con un typedef |
Errore del compilatore C2379 | il numero di parametro formale ha un tipo diverso quando viene alzato di livello |
Errore del compilatore C2380 | tipi precedenti a 'identifier' (costruttore con tipo restituito o ridefinizione illegale di nome-classe corrente?) |
Errore del compilatore C2381 | 'identifier': ridefinizione; '__declspec(noreturn)' o '[[noreturn]]' differisce |
Errore del compilatore C2382 | 'identifier': ridefinizione; specifiche di eccezione diverse |
Errore del compilatore C2383 | 'identifier': gli argomenti predefiniti non sono consentiti in questo simbolo |
Errore del compilatore C2384 | 'member': impossibile applicare thread_local o __declspec(thread) a un membro di una classe gestita/WinRT |
Errore del compilatore C2385 | accesso ambiguo di 'member' |
Errore del compilatore C2386 | 'identifier': un simbolo con questo nome esiste già nell'ambito corrente |
Errore del compilatore C2387 | 'identifier': classe base ambigua |
Errore del compilatore C2388 | 'identifier': un simbolo non può essere dichiarato con __declspec(appdomain) e __declspec(process) |
Errore del compilatore C2389 | 'operator': operando non valido 'nullptr' |
Errore del compilatore C2390 | 'identifier': classe di archiviazione non corretta 'identificatore' |
Errore del compilatore C2391 | 'identifier': 'friend' non può essere usato durante la definizione del tipo |
Errore del compilatore C2392 | 'member1': i tipi restituiti covariante non sono supportati nei tipi managed/WinRT, altrimenti 'member2' verrebbe sottoposto a override |
Errore del compilatore C2393 | 'symbol': il simbolo per ogni appdomain non può essere allocato nel segmento 'segment' |
Errore del compilatore C2394 | 'type::operator operator': operatore CLR/WinRT non valido. Almeno un parametro deve essere dei tipi seguenti: 'T^', 'T^%', 'T^&', dove T = 'type' |
Errore del compilatore C2395 | 'type::operator operator': operatore CLR/WinRT non valido. Almeno un parametro deve essere dei tipi seguenti: 'T', 'T%', 'T&', 'T^', 'T^%', 'T^&', 'T^&', dove T = 'type' |
Errore del compilatore C2396 | 'type1::operator type2': funzione di conversione CLR/WinRT definita dall'utente non valida. Deve eseguire la conversione da o in: 'T^', 'T^%', 'T^&', dove T = 'type1' |
Errore del compilatore C2397 | la conversione da 'type1' a 'type2' richiede una conversione di tipo narrowing |
Errore del compilatore C2398 | Elemento 'number': la conversione da 'type1' a 'type2' richiede una conversione di tipo narrowing |
Errore del compilatore C2399 | Obsoleta. |
Vedi anche
Errori e avvisi del compilatore C/C++ e degli strumenti di compilazione
Errori del compilatore C2001 - C3999, C7000 - C7999