Comunque, non farci affidamento: il riempimento con un pattern della memoria non inizializzata è semplicemente un favore che ti fa il compilatore nelle build di debug, di norma non potresti fare nessuna assunzione sul valore delle variabili non inizializzate (e questo, se si usano tipi in virgola mobile, può causare anche qualche problema); in particolare, quando compili in modalità release, il compilatore disattiva tutti questi aiuti al debug per favorire la velocità del codice (riempire la memoria con un pattern ha un costo non del tutto indifferente).