Als u een toepassing in C# maakt, bent u gewend functies aan te roepen om specifieke waarden te retourneren. Soms zijn er gevallen waarin u meerdere waarden van een enkele functie moet retourneren.

Er zijn verschillende manieren waarop u dit kunt bereiken. Een daarvan is om meerdere waarden binnen een enkele array te retourneren. U kunt vanuit de functie ook waarden toewijzen aan meerdere globale variabelen.

Afhankelijk van uw bedrijfslogica, scopevereisten of conventies, is een andere manier om dit te bereiken het gebruik van parameters.

Wat is een out-parameter?

De standaardmanier om een ​​waarde uit een functie te retourneren, is door het sleutelwoord "return" te gebruiken. Als u niet bekend bent met wat een functie is, kunt u hier meer over lezen functies in de programmering. Je kunt ook andere verkennen fundamentele programmeerprincipes.

statischleegte Berekening() 
{
dubbele nummer = 30;
opbrengst nummer;
}

Een andere manier om een ​​waarde uit een functie op te halen, is door in plaats daarvan een "out"-parameter te gebruiken. U kunt een out-parameter declareren binnen de handtekening van de methode. U kunt dan het sleutelwoord "out" gebruiken om aan te geven dat de parameter een out-parameter is.

instagram viewer

In plaats van het sleutelwoord return te gebruiken, moet u altijd een waarde toekennen aan de out-parameter.

statischleegteBerekening(uit dubbele nummer)
{
aantal = 30;
}

Wanneer u de methode Calculation() aanroept, geeft u een variabele door voor de out-parameter. Het programma krijgt de waarde van de variabele "getal" in de functie Calculation() en wijst deze toe aan de ingevoerde variabele. In dit geval wordt de waarde "30" uitgevoerd.

dubbele nummer = 0;

// Haalt de waarde op van de variabele "number" in de Calculation()-functie, die 30 is.
Berekening (uit nummer);

// Drukt het getal 30 af
Troosten.Schrijf lijn(nummer);

Een functie maken met een out-parameter

Maak een functie in een nieuwe C#-consoletoepassing en geef de parameter het sleutelwoord "out".

  1. Open Visual Studio op uw computer en klik op Maak een nieuw project aan.
  2. Selecteer Console applicatieen klik op Volgende.
  3. Geef uw project een naam en selecteer een locatie om uw Visual Studio-bestanden op te slaan. Klik op Volgende.
  4. Klik op Creëren. Visual Studio genereert de startcode voor een eenvoudige consoletoepassing.
  5. Maak onder de functie Main() een nieuwe functie met de naam CalculateTaxSalary(). Het doel van deze functie is om de belasting van iemands loon in te houden om zijn nettoloon te berekenen.
    statischdubbeleBerekenBelastingSalaris(int salaris, uit dubbele belastBedrag)
    {
    }
  6. Voeg binnen de functie de berekening toe voor het nettoloon na belastingen. Retourneer het resultaat.
    statischdubbeleBerekenBelastingSalaris(int salaris)
    {
    constdubbele belastingtarief = 0.3;
    dubbele takeHomeSalary = salaris - (salaris * belastingtarief);
    opbrengst takeHomeSalaris;
    }
  7. Verwijder de standaard "Hello World"-uitvoer in de hoofdfunctie. Roep in plaats daarvan de functie CalculateTaxSalary() aan. Druk het resultaat af dat wordt geretourneerd door de functie naar de console.
    statischleegte Belangrijkste (tekenreeks[] argumenten)
    {
    dubbele takeHomeSalary = BerekenBelastingSalaris(100000);
    Troosten. WriteLine($"Het netto salaris van $ 100,000is $ {takeHomeSalaris}");
    }
  8. Wijzig de functie CalculateTaxSalary() zodat u ook een tweede waarde moet retourneren. De tweede waarde bevat het belaste bedrag. Aangezien u de return-instructie al gebruikt om een ​​waarde te retourneren, gebruikt u in plaats daarvan een out-parameter. Voeg een parameter taxedAmount out toe aan de handtekening van de methode.
    statischdubbeleBerekenBelastingSalaris(int salaris, uit dubbele belastBedrag)
  9. Bereken binnen de functie CalculateTaxSalary() het belastingbedrag dat op het salaris wordt toegepast. Wijs het resultaat toe aan de variabele taxedAmount.
    statischdubbeleBerekenBelastingSalaris(int salaris, uit dubbele belastBedrag)
    {
    constdubbele belastingtarief = 0.3;
    taxedAmount = salaris * belastingtarief;
    dubbele takeHomeSalary = salaris - taxedAmount;
    opbrengst takeHomeSalaris;
    }

Hoe een waarde uit een Out-parameter te retourneren

Om de waarde van een out-parameter op te halen, roept u de functie aan en slaat u de waarde van de out-parameter op in een lokale variabele.

  1. Verwijder de bestaande code uit de functie Main(). Maak een nieuwe variabele aan om het belaste bedrag op te slaan.
    dubbele belastBedrag = 0;
  2. Roep de functie CalculateTaxSalary() aan. De functie retourneert het takehome-salaris met behulp van de aangifteverklaring. De functie haalt ook de waarde op van de variabele taxedAmount, met behulp van de parameter out. Het slaat de waarde op in de variabele taxedAmount in de hoofdfunctie.
    dubbele takeHomeSalary = BerekenBelastingSalaris(100000, uit belastBedrag);
    Troosten. WriteLine($"Het netto salaris van $ 100,000is $ {takeHomeSalaris}. Het bedrag dat werd belast was $ {taxedAmount}.");

Meerdere uitgangsparameters gebruiken

Om meerdere out-parameters te gebruiken, maakt u een functie en voegt u het out-trefwoord toe aan alle parameters waarvan u een waarde wilt retourneren.

  1. Maak een nieuwe functie genaamd MultipleValues(). Tel drie van de parameters op en ken aan elk ervan een waarde toe.
    statischleegteMeerdere waarden(uit int een, uit int b, uit int C)
    {
    een = 10;
    b = 20;
    k = 30;
    }
  2. Maak in de functie Main() lokale variabelen voor elk van de drie waarden.
    int een = 0;
    int b = 0;
    int c = 0;
  3. Roep de functie MultipleValues() aan om de drie waarden via de out-parameters te retourneren.
    Meerdere waarden (uit a, uit b, uit c);
    Troosten. Schrijfregel($"a: {a}, b: {b}, c: {c}");

De consoletoepassing uitvoeren

Wanneer u de toepassing start, wordt er een opdrachtpromptvenster geopend om u afgedrukte afschriften in uw toepassing te tonen.

  1. Klik bovenaan de Visual Studio-applicatie op de groene afspeelknop om de console-applicatie te starten.
  2. Visual Studio compileert het programma en opent een opdrachtprompt. De opdrachtprompt geeft de uitgevoerde resultaten weer. Dit omvat de waarden die de functies hebben geretourneerd als out-parameters.

Out-parameters gebruiken in een C#-toepassingsconsole

In C# kunt u met onze parameters meer dan één waarde uit een functie retourneren. U kunt meerdere out-parameters declareren in de handtekening van de methode en waarden toewijzen aan deze variabelen binnen de functie. Wanneer u de functie aanroept, kunt u de waarden ophalen die zijn opgeslagen in deze out-parameters en deze op andere plaatsen in de toepassing gebruiken.

Als u te maken heeft met complexe objecten en groepen gegevens, kunt u ook objecten retourneren op basis van een klasse. U kunt meer ontdekken over het maken en gebruiken van klassen in C#.