Sobes.tech
Junior — Middle

Come avviene il trasferimento dei dati all'interno di una funzione o metodo?

sobes.tech AI

Risposta dell'AI

In C# la trasmissione dei dati a una funzione o metodo può avvenire in diversi modi:

  • Per valore (by value) — il valore dell'argomento viene copiato. Le modifiche all'interno del metodo non influenzano i dati originali.
  • Per riferimento (ref) — viene passata una referenza alla variabile, le modifiche all'interno del metodo si riflettono sull'originale.
  • Parametro di uscita (out) — usato per restituire dati dal metodo al codice chiamante, la variabile non deve essere inizializzata prima della chiamata.
  • Parametri con la parola chiave in — trasmissione per riferimento, ma solo in lettura all'interno del metodo.

Esempio:

void UpdateValue(ref int x) {
    x = 10; // cambierà il valore della variabile passata per riferimento
}

int a = 5;
UpdateValue(ref a);
// ora a == 10