Pokud vytváříte aplikaci v C#, budete zvyklí volat funkce pro vrácení konkrétních hodnot. Někdy mohou nastat případy, kdy budete muset vrátit více hodnot z jedné funkce.
Existují různé způsoby, jak toho můžete dosáhnout. Jedním z nich je vrátit několik hodnot uvnitř jednoho pole. Zevnitř funkce můžete také přiřadit hodnoty více globálním proměnným.
V závislosti na vaší obchodní logice, požadavcích na rozsah nebo konvencích je dalším způsobem, jak toho dosáhnout, použití parametrů.
Co je to parametr Out?
Standardním způsobem, jak vrátit hodnotu z funkce, je použít klíčové slovo "return". Pokud nevíte, co je funkce, můžete si o tom přečíst více funkce v programování. Můžete také prozkoumat další základní principy programování.
statickýprázdnota Výpočet()
{
dvojnásobek číslo = 30;
vrátit se číslo;
}
Dalším způsobem, jak získat hodnotu z funkce, je místo toho použít parametr "out". Parametr out můžete deklarovat v rámci podpisu metody. Potom můžete použít klíčové slovo "out" k označení, že parametr je parametr out.
Místo použití klíčového slova return musíte vždy přiřadit hodnotu parametru out.
statickýprázdnotaVýpočet(ven dvojnásobek číslo)
{
číslo = 30;
}
Když zavoláte metodu Calculation(), předejte proměnnou pro parametr out. Program získá hodnotu proměnné "number" uvnitř funkce Calculation() a přiřadí ji zadané proměnné. V tomto případě bude na výstupu hodnota „30“.
dvojnásobek číslo = 0;
// Získá hodnotu proměnné "number" uvnitř funkce Calculation(), což je 30.
Výpočet (mimo číslo);
// Vytiskne číslo 30
Řídicí panel.WriteLine(číslo);
Jak vytvořit funkci s parametrem Out
Vytvořte funkci v nové konzolové aplikaci C# a dejte parametru klíčové slovo "out".
- Otevřete Visual Studio v počítači a klikněte na Vytvořte nový projekt.
- Vybrat Konzolová aplikacea klikněte na další.
- Pojmenujte svůj projekt a vyberte umístění pro uložení souborů sady Visual Studio. Klikněte na další.
- Klikněte na Vytvořit. Visual Studio vygeneruje počáteční kód pro jednoduchou konzolovou aplikaci.
- Pod funkcí Main() vytvořte novou funkci s názvem CalculateTaxSalary(). Cílem této funkce je odečíst daň ze mzdy osoby pro výpočet mzdy, kterou si vezme domů.
statickýdvojnásobekVypočítatDaňovou mzdu(int plat, ven dvojnásobek zdaněná částka)
{
} - Uvnitř funkce přidejte výpočet mzdy po zdanění. Vraťte výsledek.
statickýdvojnásobekVypočítatDaňovou mzdu(int plat)
{
konstdvojnásobek daňová sazba = 0.3;
dvojnásobek takeHomeSalary = plat - (plat * taxRate);
vrátit se vzít domů plat;
} - Odeberte výchozí výstup „Ahoj světe“ v hlavní funkci. Místo toho volejte funkci CalculateTaxSalary(). Vytiskněte výsledek vrácený funkcí do konzoly.
statickýprázdnota Hlavní (argumenty řetězce[])
{
dvojnásobek takeHomeSalary = VypočítatDaňSalary(100000);
Řídicí panel. WriteLine($"Plat přivezený domů z $ 100,000je $ {takeHomeSalary}");
} - Upravte funkci CalculateTaxSalary() tak, abyste také potřebovali vrátit druhou hodnotu. Druhá hodnota bude obsahovat zdaněnou částku. Protože k vrácení hodnoty již používáte příkaz return, použijte místo toho parametr out. Přidejte parametr taxedAmount out do podpisu metody.
statickýdvojnásobekVypočítatDaňovou mzdu(int plat, ven dvojnásobek zdaněná částka)
- Uvnitř funkce CalculateTaxSalary() vypočítejte částku daně použitou na plat. Výsledek přiřaďte k proměnné taxedAmount.
statickýdvojnásobekVypočítatDaňovou mzdu(int plat, ven dvojnásobek zdaněná částka)
{
konstdvojnásobek daňová sazba = 0.3;
zdaněnáČástka = plat * daňová sazba;
dvojnásobek takeHomeSalary = plat - zdaněnáČástka;
vrátit se vzít domů plat;
}
Jak vrátit hodnotu z parametru Out
Chcete-li získat hodnotu parametru out, zavolejte funkci a uložte hodnotu parametru out do lokální proměnné.
- Odeberte existující kód z funkce Main(). Vytvořte novou proměnnou pro uložení zdaněné částky.
dvojnásobek zdaněnáČástka = 0;
- Volání funkce CalculateTaxSalary(). Funkce vrátí mzdu při převzetí domů pomocí příkazu return. Funkce také načte hodnotu z proměnné taxedAmount pomocí parametru out. Uloží hodnotu do proměnné taxedAmount uvnitř hlavní funkce.
dvojnásobek takeHomeSalary = VypočítatDaňSalary(100000, out taxedAmount);
Řídicí panel. WriteLine($"Plat přivezený domů z $ 100,000je $ {takeHomeSalary}. Částka, která byla zdaněna, byla $ {taxedAmount}.");
Jak používat více výstupních parametrů
Chcete-li použít více parametrů out, vytvořte funkci a přidejte klíčové slovo out ke všem parametrům, ze kterých chcete vrátit hodnotu.
- Vytvořte novou funkci nazvanou MultipleValues(). Přidejte tři parametry a každému z nich přiřaďte hodnotu.
statickýprázdnotaMultipleValues(ven int a, ven int b, ven int C)
{
a = 10;
b = 20;
c = 30;
} - Ve funkci Main() vytvořte místní proměnné pro každou ze tří hodnot.
int a = 0;
int b = 0;
int c = 0; - Voláním funkce MultipleValues() vrátíte tři hodnoty prostřednictvím parametrů out.
MultipleValues (out a, out b, out c);
Řídicí panel. WriteLine($"a: {a}, b: {b}, c: {c}");
Jak spustit konzolovou aplikaci
Po spuštění aplikace se otevře okno příkazového řádku, ve kterém se zobrazí tištěné výpisy z vaší aplikace.
- V horní části aplikace Visual Studio klikněte na zelené tlačítko přehrávání a spusťte konzolovou aplikaci.
- Visual Studio zkompiluje program a otevře příkazový řádek. Příkazový řádek zobrazí vytištěné výsledky. To zahrnuje hodnoty, které funkce vrátily jako out parametry.
Použití Out parametrů v C# Application Console
V C# vám parametry out umožňují vrátit více než jednu hodnotu z funkce. V podpisu metody můžete deklarovat více parametrů out a přiřadit hodnoty těmto proměnným uvnitř funkce. Když funkci zavoláte, můžete načíst hodnoty uložené v těchto parametrech out a použít je na jiných místech aplikace.
Pokud se zabýváte složitými objekty a skupinami dat, můžete také vrátit objekty založené na třídě. Můžete prozkoumat více o tom, jak vytvářet a používat třídy v C#.