Condividi tramite


Considerazioni di avvio aggiuntive

In C++ la costruzione e la distruzione di un oggetto possono richiedere l'esecuzione di codice utente. Di conseguenza, è importante comprendere le inizializzazioni eseguite prima della voce main e i distruttori richiamati dopo l'uscita da main. Per informazioni dettagliate sulla costruzione e distruzione degli oggetti, vedere Costruttori e Distruttori).

Le inizializzazioni seguenti vengono eseguite prima della voce main:

  • Inizializzazione predefinita dei dati statici a zero. Tutti i dati statici senza inizializzatori espliciti vengono impostati su zero prima dell'esecuzione di qualsiasi altro codice, inclusa l'inizializzazione di runtime. I membri dati statici devono ancora essere definiti in modo esplicito.

  • Inizializzazione di oggetti statici globali in un'unità di conversione. Questa inizializzazione può essere eseguita prima della voce main o prima del primo utilizzo di qualsiasi oggetto o funzione nell'unità di conversione dell'oggetto.

Sezione specifica Microsoft

In Microsoft C++ gli oggetti statici globali vengono inizializzati prima della voce main.

Fine sezione specifica Microsoft

Gli oggetti statici globali reciprocamente interdipendenti, ma presenti in unità di conversione diverse, possono causare un comportamento non corretto.

Vedere anche

Riferimenti

Avvio e terminazione (C++)