considerare le dichiarazioniVBA variabile/matrice valori predefiniti
Dim x As Double
Dim avg(1 To 10) As Double
Quali sono i valori di default in x
e avg
?
Attraverso test, voglio dire che x
è inizializzato a zero. Allo stesso modo, voglio dire che tutti gli elementi in avg
sono stati inizializzati a zero.
Tuttavia, posso scrivere codice che dipende da questo? O i valori di inizializzazione predefiniti sono effettivamente indeterminati?
Abbastanza sicuro è corretto. Si noti, tuttavia, che se si utilizzano gli array dinamici, nessun elemento viene inizializzato e il riferimento a arr (0) prima dell'impostazione esplicita restituisce un errore. – dmogle
A parte, sono abbastanza sicuro (cercando SO) che non è possibile specificare un inizializzatore alla dichiarazione in VBA di Excel, dal momento che è una cosa .NET. Grazie per il Ref! Ciò dissipa totalmente ogni dubbio sul fatto che 'x' sia pari a zero. Anche se ogni elemento di un array fisso viene inizializzato a zero? In realtà avevo già scoperto che gli array dinamici non venivano inizializzati (solo assegnati) dopo la dichiarazione, e volevo solo assicurarmi che la dichiarazione di array fissi non si comportasse nello stesso modo. –
@Prashant, perché non aggiungere un orologio alla variabile e provare da solo? – Reafidy