Se stai creando un'applicazione in C#, sarai abituato a chiamare funzioni per restituire valori specifici. A volte, potrebbero esserci casi in cui potrebbe essere necessario restituire più valori da una singola funzione.

Esistono diversi modi per raggiungere questo obiettivo. Uno consiste nel restituire diversi valori all'interno di un singolo array. Puoi anche assegnare valori a più variabili globali, dall'interno della funzione.

A seconda della logica aziendale, dei requisiti dell'ambito o delle convenzioni, un altro modo per raggiungere questo obiettivo consiste nell'usare i parametri.

Cos'è un parametro Out?

Il modo standard per restituire un valore da una funzione è utilizzare la parola chiave "return". Se non hai familiarità con cosa sia una funzione, puoi leggere di più su funzioni nella programmazione. Puoi anche esplorare altro principi base di programmazione.

staticovuoto Calcolo() 
{
Doppio numero = 30;
ritorno numero;
}

Un altro modo per recuperare un valore da una funzione consiste nell'utilizzare invece un parametro "out". È possibile dichiarare un parametro out all'interno della firma del metodo. È quindi possibile utilizzare la parola chiave "out" per indicare che il parametro è un parametro out.

instagram viewer

Invece di utilizzare la parola chiave return, devi sempre assegnare un valore al parametro out.

staticovuotoCalcolo(fuori Doppio numero)
{
numero = 30;
}

Quando chiami il metodo Calculation(), passa una variabile per il parametro out. Il programma otterrà il valore della variabile "number" all'interno della funzione Calculation() e lo assegnerà alla variabile immessa. In questo caso verrà emesso il valore "30".

Doppio numero = 0;

// Ottiene il valore della variabile "number" all'interno della funzione Calculation(), che è 30.
Calcolo (fuori numero);

// Stampa il numero 30
Consolle.Linea di scrittura(numero);

Come creare una funzione con un parametro Out

Creare una funzione all'interno di una nuova applicazione console C# e assegnare al parametro la parola chiave "out".

  1. Apri Visual Studio sul tuo computer e fai clic su Crea un nuovo progetto.
  2. Selezionare Applicazione consolee fare clic su Prossimo.
  3. Assegna un nome al progetto e seleziona una posizione in cui archiviare i file di Visual Studio. Clicca su Prossimo.
  4. Clicca su Creare. Visual Studio genererà il codice iniziale per una semplice applicazione console.
  5. Sotto la funzione Main(), crea una nuova funzione chiamata CalculateTaxSalary(). Lo scopo di questa funzione è quello di detrarre l'imposta dal salario di una persona per calcolare il suo stipendio da portare a casa.
    staticoDoppioCalcola Tasse Stipendio(int stipendio, fuori Doppio importo tassato)
    {
    }
  6. All'interno della funzione, aggiungi il calcolo per lo stipendio da portare a casa al netto delle imposte. Restituisci il risultato.
    staticoDoppioCalcola Tasse Stipendio(int stipendio)
    {
    costDoppio aliquota fiscale = 0.3;
    Doppio takeHomeSalary = stipendio - (stipendio * taxRate);
    ritorno takeHomeStipendio;
    }
  7. Rimuovi l'output predefinito "Hello World" nella funzione Main. Chiamare invece la funzione CalculateTaxSalary(). Stampa il risultato restituito dalla funzione alla console.
    staticovuoto Principale (stringa[] argomenti)
    {
    Doppio takeHomeSalary = CalculateTaxSalary(100000);
    Consolle. WriteLine($"Lo stipendio da portare a casa da $ 100,000È $ {takeHomeSalary}");
    }
  8. Modificare la funzione CalculateTaxSalary() in modo che sia necessario restituire anche un secondo valore. Il secondo valore conterrà l'importo tassato. Poiché stai già utilizzando l'istruzione return per restituire un valore, utilizza invece un parametro out. Aggiungi un parametro taxedAmount out alla firma del metodo.
    staticoDoppioCalcola Tasse Stipendio(int stipendio, fuori Doppio importo tassato)
  9. All'interno della funzione CalculateTaxSalary(), calcola l'importo dell'imposta applicata allo stipendio. Assegna il risultato alla variabile taxedAmount.
    staticoDoppioCalcola Tasse Stipendio(int stipendio, fuori Doppio importo tassato)
    {
    costDoppio aliquota fiscale = 0.3;
    taxedAmount = stipendio * taxRate;
    Doppio takeHomeSalary = stipendio - taxedAmount;
    ritorno takeHomeStipendio;
    }

Come restituire un valore da un parametro Out

Per recuperare il valore di un parametro out, chiamare la funzione e archiviare il valore del parametro out in una variabile locale.

  1. Rimuovere il codice esistente dalla funzione Main(). Crea una nuova variabile per memorizzare l'importo tassato.
    Doppio importo tassato = 0;
  2. Chiamare la funzione CalculateTaxSalary(). La funzione restituirà lo stipendio da portare a casa utilizzando l'istruzione return. La funzione recupererà anche il valore dalla variabile taxedAmount, utilizzando il parametro out. Memorizzerà il valore nella variabile taxedAmount all'interno della funzione principale.
    Doppio takeHomeSalary = CalculateTaxSalary(100000, out taxedAmount);
    Consolle. WriteLine($"Lo stipendio da portare a casa da $ 100,000È $ {takeHomeSalary}. L'importo tassato era di $ {taxedAmount}.");

Come utilizzare più parametri in uscita

Per utilizzare più parametri out, crea una funzione e aggiungi la parola chiave out a tutti i parametri da cui desideri restituire un valore.

  1. Crea una nuova funzione chiamata MultipleValues(). Aggiungi tre parametri out e assegna un valore a ciascuno di essi.
    staticovuotoMultipleValues(fuori int a, fuori int b, fuori int C)
    {
    un = 10;
    b = 20;
    c = 30;
    }
  2. Nella funzione Main(), crea variabili locali per ciascuno dei tre valori.
    int un = 0;
    int b = 0;
    int c = 0;
  3. Chiamare la funzione MultipleValues() per restituire i tre valori tramite i parametri out.
    MultipleValues ​​(out a, out b, out c);
    Consolle. ScriviRiga($"a: {a}, b: {b}, c: {c}");

Come eseguire l'applicazione console

Quando si esegue l'applicazione, si aprirà una finestra del prompt dei comandi per mostrare eventuali istruzioni stampate nell'applicazione.

  1. Nella parte superiore dell'applicazione Visual Studio, fai clic sul pulsante di riproduzione verde per avviare l'applicazione console.
  2. Visual Studio compilerà il programma e aprirà un prompt dei comandi. Il prompt dei comandi visualizzerà i risultati emessi. Ciò include i valori restituiti dalle funzioni come parametri out.

Utilizzo dei parametri Out in una console dell'applicazione C#

In C#, i parametri out consentono di restituire più di un valore da una funzione. È possibile dichiarare più parametri out nella firma del metodo e assegnare valori a queste variabili all'interno della funzione. Quando si chiama la funzione, è possibile recuperare i valori archiviati in questi parametri out e utilizzarli in altri punti dell'applicazione.

Se hai a che fare con oggetti complessi e gruppi di dati, puoi anche restituire oggetti basati su una classe. Puoi scoprire di più su come creare e usare le classi in C#.