設計一個方法的參數的時,可為部分或全部參數配置設定預設值。調用其方法時,可以重新指定配置設定了預設值的參數,也可以使用預設值。
重新指定配置設定預設值的參數時,可以顯式地為指定參數名稱指派,隐式指定的時候,是根據方法參數的順序,靠c#編譯器的推斷。
代碼示例:
void m(int x=9,string s="a",datetime dt = default(datetime))
{...}
main()
{
m();//使用預設值
m(8,"b")://隐式指定方法參數,沒有指定的使用預設值
m(6,"v",datetime.now);//同上
m(6,dt:datetime.now);//顯式的指定參數名稱,為指定的參數傳值
}
使用的指導原則:
1、可以為方法和有參屬性指定預設值
2、有預設值的參數,必須定義在沒有預設值的參數之後
3、預設參數必須是常量
4、ref 和 out參數不能指定預設值
備注:轉自http://www.cnblogs.com/lmfeng/archive/2012/10/19/2731005.html