Condividi tramite


Avvisi del compilatore disattivati per impostazione predefinita

Il compilatore include avvisi che vengono disattivati per impostazione predefinita perché la maggior parte degli utenti non desidera visualizzarli. È tuttavia possibile abilitare questi avvisi utilizzando una delle opzioni seguenti.

  • #pragma warning(default : warning_number )
    L'avviso specificato (warning_number) è abilitato al relativo livello predefinito. La documentazione dell'avviso contiene il livello predefinito dell'avviso.

  • #pragma warning( warning_level : warning_number )
    L'avviso specificato (warning_number) è abilitato al livello specificato (warning_level).

  • /Wall
    /Wall abilita tutti gli avvisi, inclusi quelli disabilitati per impostazione predefinita.

I seguenti avvisi sono disabilitati per impostazione predefinita.

C4061 (livello 4)

l'enumeratore '%$S' nell'istruzione switch dell'enum '%$pS' non viene gestito da un'etichetta case in modo esplicito

C4062 (livello 3)

l'identificatore' enumeratore '%$S' nell'istruzione switch dell'enum '%$pS' non viene gestito

C4191 (livello 3)

'operatore/operazione': conversione non affidabile da 'tipo di espressione' in 'tipo richiesto'

C4242 (livello 4)

'identificatore' : conversione da '%$T' to '%$T'. Possibile perdita di dati

C4254 (livello 4)

'operatore': conversione da '%$T' a '%$T'. Possibile perdita di dati

C4255 (livello 4)

'funzione': nessun prototipo di funzione dato. Conversione di '()' in '(void)'

C4263 (livello 4)

'funzione': la funzione membro non esegue l'override di nessuna funzione membro virtuale di una classe base

C4264 (livello 1)

'funzione_virtuale': override non disponibile per la funzione membro virtuale dalla base '%$pC'. La funzione è nascosta.

C4265 (livello 3)

'classe': la classe ha funzioni virtuali ma il distruttore non è virtuale

C4266 (livello 4)

'funzione': override non disponibile per la funzione membro virtuale dalla base 'type'. La funzione è nascosta.

C4287 (livello 3)

'operatore': errata corrispondenza tra costanti unsigned/negative

C4289 (livello 4)

utilizzata estensione non standard. 'variabile': variabile di controllo ciclo dichiarata nel ciclo for e utilizzata all'esterno dell'ambito del ciclo for

C4296 (livello 4)

'operatore': l'espressione è sempre false

C4302 (livello 2)

'conversione': troncamento da '%$T' a '%$T'

C4311 (livello 1)

'variabile': troncamento puntatore da 'tipo' a 'tipo'

C4312 (livello 1)

'operazione': conversione da 'tipo1' a 'tipo2', di dimensioni maggiori

C4339 (livello 4)

'tipo': rilevato l'utilizzo di un tipo non definito nei metadati CLR; l'uso di questo tipo può causare un'eccezione della fase di esecuzione

C4342 (livello 1)

modifica del comportamento: è stato chiamato 'funzione', ma in versioni precedenti è stato chiamato un operatore membro

C4350 (livello 1)

modifica del comportamento: viene chiamato 'membro1' anziché 'membro2'

C4355

"this": utilizzato nell'elenco degli inizializzatori dei membri di base

C4365 (livello 4)

'azione': conversione da '%$T' a '%$T', mancata corrispondenza tra signed/unsigned

C4370 (livello 3)

layout della classe è stato modificato rispetto alla versione precedente del compilatore per migliorare la compressione

C4371 (livello 3)

è possibile che il layout della classe sia stato modificato rispetto alla versione precedente del compilatore per migliorare la compressione del membro 'membro'

C4388 (livello 4)

errata corrispondenza tra signed e unsigned

C4412 (livello 2)

'funzione': la firma della funzione contiene il tipo '%$T'; non è sicuro passare oggetti di C++ tra codice pure e codice misto o nativo.

C4431 (livello 4)

identificatore di tipo mancante, verrà utilizzato int. Nota: default-int non è più supportato in C++

C4435 (livello 4)

'classe1': il layout dell'oggetto in /vd2 verrà modificato a causa della base virtuale '%$S'

C4437 (livello 4)

dynamic_cast dalla base virtuale '%$S' a '%$S' potrebbe non riuscire in alcuni contesti

C4444 (livello 3)

'__unaligned' di livello superiore non implementato nel contesto

C4471 (livello 4)

una dichiarazione con prototipo di un'enumerazione senza ambito deve avere un tipo sottostante (presupposto int)

C4472 (livello 1)

'identifier' è un'enumerazione nativa: aggiungere un indicatore di accesso (privato/pubblico) per dichiarare un'enumerazione gestita

C4514 (livello 4)

'funzione': funzione inline senza riferimenti rimossa

C4536 (livello 4)

'nome tipo': il nome del tipo eccede il limite di '%d' caratteri stabilito per i metadati

C4545 (livello 1)

l'espressione prima della virgola restituisce una funzione senza elenco di argomenti

C4546 (livello 1)

nella chiamata di funzione prima della virgola manca l'elenco degli argomenti

C4547 (livello 1)

'operatore': l'operatore prima della virgola non ha effetto. Previsto operatore con effetto collaterale.

C4548 (livello 1)

l'espressione prima della virgola non ha effetto. Prevista espressione con effetto collaterale.

C4549 (livello 1)

'operatore': l'operatore prima della virgola non ha effetto. Utilizzare '%$L'?

C4555 (livello 1)

l'espressione non ha effetto. Prevista espressione con effetto collaterale

C4557 (livello 3)

'__assume' contiene l'effetto 'effetto'

C4571 (livello 4)

messaggio informativo: la semantica di catch(...) è cambiata dopo Visual C++ 7.1; le eccezioni strutturate (SEH) non vengono più rilevate

C4574 (livello 4)

"identificatore" è definito come "0 ": si intendeva utilizzare "identificatore #if"?

C4608 (livello 3)

'symbol1' è già stato inizializzato dal membro di un'altra unione nell'elenco degli inizializzatori, 'symbol2'

C4619 (livello 3)

avviso #pragma: nessun numero di avviso '%d'

C4623 (livello 4)

'classe derivata': impossibile generare il costruttore predefinito poiché un costruttore predefinito della classe base è inaccessibile

C4625 (livello 4)

'classe derivata': impossibile generare il costruttore di copia poiché un costruttore di copia della classe base è inaccessibile

C4626 (livello 4)

'classe derivata': impossibile generare l'operatore di assegnazione poiché un operatore di assegnazione della classe base è inaccessibile

C4628 (livello 1)

digraph non supportati con -Ze. La sequenza di caratteri 'digraph' non è stata interpretata come token alternativo per 'char'

C4640 (livello 3)

'istanza': la costruzione di oggetti statici locali non è thread-safe

C4668 (livello 4)

'simbolo' non è definita come macro del preprocessore. Sostituzione con '0' per 'direttive'

C4682 (livello 4)

'symbol': nessun attributo specificato per il parametro direzionale. Verrà utilizzato [in]

C4686 (livello 3)

'tipo-definito dall'utente': possibile modifica del comportamento. Modifica nella convenzione di chiamata per il valore restituito del tipo definito dall'utente.

C4692 (livello 1)

'funzione': la firma del membro non privato contiene il tipo nativo privato 'tipo_nativo' dell'assembly

C4710 (livello 4)

'funzione': funzione non resa inline

C4738 (livello 3)

archiviazione in memoria del risultato float a 32 bit, possibile riduzione delle prestazioni

C4767 (livello 4)

il nome della sezione "symbol" è più lungo di 8 caratteri e verrà troncato dal linker

C4786 (livello 3)

"symbol'': nome oggetto troncato a ''numero" caratteri nelle informazioni di debug

C4820 (livello 4)

'byte' byte di riempimento aggiunti dopo costrutto 'nome_membro'

C4826 (livello 2)

Conversione da '%$T' a '%$T' con segno esteso. Questa situazione può produrre un comportamento imprevisto in fase di esecuzione.

C4837 (livello 4)

rilevato trigramma '??%c' sostituito da '%c'

C4905 (livello 1)

cast di stringa letterale wide su "LPSTR"

C4906 (livello 1)

cast di stringa letterale su "LPWSTR"

C4917 (livello 1)

'dichiaratore': un GUID può essere associato solo a una classe, un'interfaccia o uno spazio dei nomi

C4928 (livello 1)

inizializzazione di copia non valida; sono state implicitamente applicate più conversioni definite dall'utente

C4931 (livello 4)

si suppone che la libreria dei tipi sia stata compilata per puntatori a numero bit

C4946 (livello 1)

reinterpret_cast utilizzato tra le classi correlate 'classe1' e 'classe2'

C4962

'funzione': ottimizzazioni PGO disabilitate perché le ottimizzazioni provocano l'incoerenza dei dati di profilo

C4986 (livello 4)

"symbol": la specifica dell'eccezione non corrisponde alla dichiarazione precedente

C4987 (livello 4)

utilizzata estensione non standard: 'throw (...)'

C4988 (livello 4)

"symbol": variabile dichiarata nell'ambito esterno della classe/funzione

Vedere anche

Riferimenti

warning