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.

instagram viewer

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".

  1. Otevřete Visual Studio v počítači a klikněte na Vytvořte nový projekt.
  2. Vybrat Konzolová aplikacea klikněte na další.
  3. Pojmenujte svůj projekt a vyberte umístění pro uložení souborů sady Visual Studio. Klikněte na další.
  4. Klikněte na Vytvořit. Visual Studio vygeneruje počáteční kód pro jednoduchou konzolovou aplikaci.
  5. 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)
    {
    }
  6. 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;
    }
  7. 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}");
    }
  8. 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)
  9. 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é.

  1. 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;
  2. 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.

  1. 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;
    }
  2. Ve funkci Main() vytvořte místní proměnné pro každou ze tří hodnot.
    int a = 0;
    int b = 0;
    int c = 0;
  3. 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.

  1. V horní části aplikace Visual Studio klikněte na zelené tlačítko přehrávání a spusťte konzolovou aplikaci.
  2. 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#.