Quando ero a scuola (e dopo la scuola in ingegneria elettrica) ci è stato insegnato a dividere dopo la moltiplicazione. Divisione spesso molte cifre e arrotondare. Moltiplicare dopo la divisione moltiplica l'errore di divisione.
Le conversioni di tipo sono le stesse, si rischia di perdere dati. CInt (1.3) = 1.
Nella mia lingua, Basic, eseguiamo solo conversioni di tipi (un programma VB6 dedica il 90% del tempo alla conversione ANSI / Unicode, per tutte le chiamate API eseguite dal runtime).
La conversione del tipo è implicita in tutto ciò che facciamo.
Print 5
La stringa "5" viene stampata dal valore letterale numerico.
form1.caption = "My Form"
La stringa letterale unicode viene convertita in una stringa ANSI e inviata a SetWindowsTextA dal pacchetto moduli.
Anche questo funziona in base
a = "5"
b = 3
c = a + b (= 8)
Sono un programmatore variante in questi giorni - non penso nemmeno al tipo. Mi baso solo sulle autoconversioni.
In ogni caso i miei 3 pet peeves sono
Assegnare stringhe letterali a variabili per usarle (spreca memoria e rallenta)
Funzioni inutili quando il codice potrebbe essere in linea (e il compilatore probabilmente annullerà la tua funzione e la inline comunque)
Imposta tutti gli oggetti su nulla come le ultime linee prima di una End Function o alla fine del programma.
e un quarto per i programmi brevi
Attenua le tue 3 variabili in un programma a 5 righe in modo poco nitido.