1. 程式人生 > >二、C#4.5語法新特徵-02(引數預設值和命名引數)

二、C#4.5語法新特徵-02(引數預設值和命名引數)

一、引數修飾符型別

1 out 引數修飾符
out 引數通過引用來傳遞。

 static void Method(out int i)
    {
        i = 44;
    }
    static void Main()
    {
        int value;
        Method(out value);
    }

2 ref 引數修飾符
ref 引數通過引用傳遞的引數,而不是值。

static void Method(ref int i)
        {
            i = i + 44;
        }
        static void Main()
        {
            int val = 1;
            Method(ref val);
            Console.WriteLine(val);
        }

3 params 引數修飾符
params 關鍵字可以指定採用數目可變的引數的 方法引數。可以傳送引數宣告中所指定型別的逗號分隔的引數列表或指定型別的引數陣列。 還可以不傳送引數。

 public static void UseParams(params int[] list)
    {
        for (int i = 0; i < list.Length; i++)
        {
            Console.Write(list[i] + " ");
        }
    }
//呼叫方法
 UseParams(1, 2, 3, 4);

二、方法引數預設值

方法的可選引數是.net 4.0最新提出的新的功能,對應簡單的過載可以使用可選引數和命名引數混合的形式來定義方法這樣就可以很高效的提供程式碼的執行效率。設計一個方法的引數的時,可為部分或全部引數分配預設值。
案例
根據輸入的資訊進行輸出(年齡,性別)
實現預設值是16歲
年齡也可以讓呼叫方法時傳遞值
思路:
1 建立引數設定為(性別),年齡=16
2 過載方法,將方法的引數設定為(性別,年齡)

public void Show(int age=16,string sex)
{
 Console.WriteLine(“年齡:{0},性別:{1}”,age,sex);
}
//呼叫使用預設引數
Show(“男”);
//不使用預設引數
Show(27,“男”);

三、命名實參

Visual C# 2010 引入了命名實參和可選實參。 利用“命名實參”,您將能夠為特定形參指定實參,方法是將實參與該形參的名稱關聯,而不是與形參在形參列表中的位置關聯。 利用“可選實參”,您將能夠為某些形參省略實參。

命名實參

public void Show(int age=16,string sex)
{
 Console.WriteLine(“年齡:{0},性別:{1}”,age,sex);
}
//使用命名引數
Show(sex:”女”,age:25);