Sdílet prostřednictvím


Předávání parametrů (Příručka programování C#)

V jazyce C# argumenty lze předat parametry hodnotou nebo odkazem.Předání odkazem umožňuje funkce členů, metody, vlastnosti, indexování, operátory a konstruktory změnit hodnoty parametrů a nechat tuto změnu přetrvávají v životním prostředí volajícího.Předání odkazem parametru, použijte ref nebo out klíčové slovo.Pro jednoduchost pouze ref v příkladech v tomto tématu se používá klíčové slovo.Další informace o rozdílu mezi ref a out, viz REF (C#-Reference), mimo (C#-Reference), a Předávání pomocí pole ref a out (C# program televize).

Následující příklad ukazuje rozdíl mezi referenční hodnoty a parametry.

class Program
{
    static void Main(string[] args)
    {
        int arg;

        // Passing by value.
        // The value of arg in Main is not changed.
        arg = 4;
        squareVal(arg);
        Console.WriteLine(arg);
        // Output: 4

        // Passing by reference.
        // The value of arg in Main is changed.
        arg = 4;
        squareRef(ref arg);
        Console.WriteLine(arg);
        // Output: 16 
    }

    static void squareVal(int valParameter)
    {
        valParameter *= valParameter;
    }

    // Passing by reference
    static void squareRef(ref int refParameter)
    {
        refParameter *= refParameter;
    }
}

Další informace naleznete v následujících tématech:

Specifikace jazyka C#

Další informace naleznete v tématu Specifikace jazyka C#. Specifikace jazyka je úplným a rozhodujícím zdrojem pro syntaxi a použití jazyka C#.

Viz také

Referenční dokumentace

Metody (Příručka programování C#)

Koncepty

Příručka programování C#