Considerazioni aggiuntive di avvio
In C++, la costruzione di un oggetto e la distruzione possono includere eseguire il codice utente.Pertanto, è importante capire quali inizializzazioni verificare prima della voce principale e che i distruttori vengono richiamati dopo l'uscita principale.(Per informazioni dettagliate sulla costruzione e la distruzione degli oggetti, vedere costruttori e distruttori).
Le inizializzazioni hanno luogo prima della voce a principale:
Inizializzazione predefinita dei dati statici a zero.Tutti i dati statici senza inizializzatori espliciti sono impostati su zero prima di eseguire qualsiasi altro codice, inclusa l'inizializzazione in fase di esecuzione.I membri dati statici devono ancora essere definiti in modo esplicito.
Inizializzazione degli oggetti statici globali in un'unità di conversione.Questa situazione può verificarsi in qualsiasi prima della voce a principale o prima del primo utilizzo di qualsiasi funzione o oggetto nell'unità di traduzione dell'oggetto.
Specifici di Microsoft
In Microsoft C++, gli oggetti statici globali vengono inizializzati prima della voce a principale.
Microsoft FINALE specifico
Gli oggetti statici globali che si escludono interdipendenti ma in unità di conversione diversi possono causare un comportamento non corretto.