[MatLab] funzione global o normale?
Salve. Mi sto preparando per un esame in cui sarà necessario usare MatLab. Sto cercando di imparare un po' alla buona e mi servirebbe un consiglio. Ho da poco scoperto la possibilità di dichiarare variabili global e mi sono posto la seguente domanda:
devo scrivere dei programmi relativamente (non troppo però) complessi (per problemi di fisica) in cui tante funzioni diverse condividono l'utilizzo della stessa costante fisica (es. quella dei gas). Secondo voi, non essendo una variabile adimensionale (ma che varia quindi a seconda delle unità di misura scelta) mi conviene dichiarala global oppure "normale"? Il vantaggio (che immagino) ci sia nel dichiararla global è quello che se cambio le unità di misura la cambio na volta sola, in qualsiasi punto del programma. O sbaglio?
devo scrivere dei programmi relativamente (non troppo però) complessi (per problemi di fisica) in cui tante funzioni diverse condividono l'utilizzo della stessa costante fisica (es. quella dei gas). Secondo voi, non essendo una variabile adimensionale (ma che varia quindi a seconda delle unità di misura scelta) mi conviene dichiarala global oppure "normale"? Il vantaggio (che immagino) ci sia nel dichiararla global è quello che se cambio le unità di misura la cambio na volta sola, in qualsiasi punto del programma. O sbaglio?
Risposte
Le variabili globali portano con se molti problemi, ma probabilmente questo è uno dei casi in cui è probabilmente una buona idea usarle. Stiamo pur sempre parlando di costanti che vanno condivise tra diverse funzioni.
Da neofita la ringrazio molto, ma quale sarebbe, per esempio, un problema che tali variabili comportano? Più che altro non vorrei trovarmi nel mezzo dell'esame con un codice che non gira... potrei andare nel panico

Le variabili globali sono un problema quando non sono costanti e diverse parti del codice possono accedervi per modificarle.