Kui loote rakenduse C#-s, olete harjunud konkreetsete väärtuste tagastamiseks funktsioonidele helistama. Mõnikord võib juhtuda, et peate tagastama ühest funktsioonist mitu väärtust.
Selle saavutamiseks on erinevaid viise. Üks on mitme väärtuse tagastamine ühes massiivi sees. Funktsiooni sees saate määrata ka väärtusi mitmele globaalsele muutujale.
Sõltuvalt teie äriloogikast, ulatuse nõuetest või tavadest on teine viis selle saavutamiseks kasutada parameetreid.
Mis on Out-parameeter?
Tavaline viis funktsiooni väärtuse tagastamiseks on kasutada märksõna "tagastamine". Kui te pole selle funktsiooniga kursis, saate selle kohta rohkem lugeda funktsioonid programmeerimisel. Samuti saate uurida teisi programmeerimise põhiprintsiibid.
staatilinetühine Arvutus()
{
kahekordne arv = 30;
tagasi number;
}
Teine võimalus funktsioonist väärtuse hankimiseks on kasutada selle asemel parameetrit "out". Meetodi allkirjas saate deklareerida väljaparameetri. Seejärel saate kasutada märksõna "out" tähistamaks, et parameeter on välja parameeter.
Selle asemel, et kasutada tagastusmärksõna, peate alati määrama parameetri out väärtuse.
staatilinetühineArvutus(välja kahekordne number)
{
arv = 30;
}
Meetodi Calculation() kutsumisel sisestage parameetri out muutuja. Programm saab funktsioonis Calculation() oleva muutuja "number" väärtuse ja määrab selle sisestatud muutujale. Sel juhul kuvatakse väärtus "30".
kahekordne arv = 0;
// Hangib funktsiooni Calculation() sees oleva muutuja "number" väärtuse, mis on 30.
Arvutamine (väljaarv);
// Prindib numbri 30
konsool.WriteLine(number);
Kuidas luua funktsiooni Out-parameetriga
Looge funktsioon uues C# konsoolirakenduses ja andke parameetrile märksõna "out".
- Avage oma arvutis Visual Studio ja klõpsake nuppu Looge uus projekt.
- Valige Konsooli rakendusja klõpsake nuppu Edasi.
- Pange oma projektile nimi ja valige Visual Studio failide salvestamise koht. Kliki Edasi.
- Kliki Loo. Visual Studio genereerib lihtsa konsoolirakenduse algkoodi.
- Looge funktsiooni Main() all uus funktsioon nimega Calculate TaxSalary(). Selle funktsiooni eesmärk on maha arvata maks inimese palgast, et arvutada tema kojuviimise töötasu.
staatilinekahekordneArvuta maksupalk(int palk, välja kahekordne taxedAmount)
{
} - Funktsiooni sees lisage kojuviimise palga arvestus peale maksude tasumist. Tagasta tulemus.
staatilinekahekordneArvuta maksupalk(int palk)
{
konstkahekordne maksumäär = 0.3;
kahekordne takeHomeSalary = palk - (palk * taxRate);
tagasi võtaKoju Palk;
} - Eemaldage põhifunktsioonist vaikeväljund "Tere maailm". Selle asemel kutsuge välja funktsioon CalculateTaxSalary(). Printige funktsioonist tagastatud tulemus konsooli.
staatilinetühine Peamine (string[] args)
{
kahekordne takeHomeSalary = ArvutaMaksupalk(100000);
konsool. WriteLine($"Kojuviimise palk alates $ 100,000on $ {takeHomeSalary}");
} - Muutke funktsiooni CalculateTaxSalary() nii, et peate tagastama ka teise väärtuse. Teine väärtus sisaldab maksustatud summat. Kuna kasutate väärtuse tagastamiseks juba return-lauset, kasutage selle asemel parameetrit out. Lisage meetodi allkirjale parameeter taxedAmount out.
staatilinekahekordneArvuta maksupalk(int palk, välja kahekordne taxedAmount)
- Funktsioonis CalculateTaxSalary() arvutage palgale rakendatud maksusumma. Määrake tulemus muutujale taxedAmount.
staatilinekahekordneArvuta maksupalk(int palk, välja kahekordne taxedAmount)
{
konstkahekordne maksumäär = 0.3;
taxedAmount = palk * taxRate;
kahekordne takeHomeSalary = palk - maksustatudSumma;
tagasi võtaKoju Palk;
}
Kuidas tagastada väärtus väljundparameetrist
Väljundparameetri väärtuse hankimiseks kutsuge funktsioon välja ja salvestage väljundparameetri väärtus kohalikku muutujasse.
- Eemaldage funktsioonist Main() olemasolev kood. Looge maksustatud summa salvestamiseks uus muutuja.
kahekordne taxedAmount = 0;
- Kutsuge funktsioon CalculateTaxSalary() välja. Funktsioon tagastab kojuviimise palga, kasutades tagastusaruannet. Funktsioon hangib ka väärtuse taxedAmount muutujast, kasutades parameetrit out. See salvestab väärtuse põhifunktsiooni muutujas taxedAmount.
kahekordne takeHomeSalary = ArvutaMaksupalk(100000, out taxedAmount);
konsool. WriteLine($"Kojuviimise palk alates $ 100,000on $ {takeHomeSalary}. Maksustatud summa oli $ {taxedAmount}.");
Kuidas kasutada mitut väljundparameetrit
Mitme väljundparameetri kasutamiseks looge funktsioon ja lisage välja märksõna kõikidele parameetritele, mille väärtust soovite tagastada.
- Looge uus funktsioon nimega MultipleValues(). Lisage kolm väljaparameetrit ja määrake igaühele neist väärtus.
staatilinetühineMitu väärtust(välja int a, välja int b, välja int c)
{
a = 10;
b = 20;
c = 30;
} - Looge funktsioonis Main() kohalikud muutujad iga kolme väärtuse jaoks.
int a = 0;
int b = 0;
int c = 0; - Kolme väärtuse tagastamiseks väljundparameetrite kaudu helistage funktsioonile MultipleValues().
MultipleValues (välja a, välja b, välja c);
konsool. WriteLine($"a: {a}, b: {b}, c: {c}");
Kuidas konsoolirakendust käivitada
Rakenduse käivitamisel avaneb käsuviiba aken, kus kuvatakse kõik teie rakenduses olevad trükitud väljavõtted.
- Konsoolirakenduse käivitamiseks klõpsake Visual Studio rakenduse ülaosas rohelist esitusnuppu.
- Visual Studio kompileerib programmi ja avab käsurea. Käsuviip kuvab väljastatud tulemused. See hõlmab väärtusi, mille funktsioonid välja parameetritena tagastasid.
Out parameetrite kasutamine C# rakenduskonsoolis
C#-s võimaldavad väljaparameetrid tagastada funktsioonist rohkem kui ühe väärtuse. Meetodi signatuuris saate deklareerida mitu väljundparameetrit ja määrata nendele muutujatele funktsiooni sees väärtused. Funktsiooni kutsumisel saate nendesse väljundparameetritesse salvestatud väärtused hankida ja neid rakenduse muudes kohtades kasutada.
Kui tegelete keerukate objektide ja andmerühmadega, saate objekte tagastada ka klassi alusel. Lisateavet C#-klasside loomise ja kasutamise kohta saate uurida.