c# 可選參數(shù)、命名參數(shù)
更新時(shí)間:2012年10月29日 13:45:02 作者:
設(shè)計(jì)一個(gè)方法的參數(shù)的時(shí),可為部分或全部參數(shù)分配默認(rèn)值。調(diào)用其方法時(shí),可以重新指定分配了默認(rèn)值的參數(shù),也可以使用默認(rèn)值
重新指定分配默認(rèn)值的參數(shù)時(shí),可以顯式地為指定參數(shù)名稱賦值,隱式指定的時(shí)候,是根據(jù)方法參數(shù)的順序,靠c#編譯器的推斷。
代碼示例:
void M(int x=9,string s="a",DateTime dt = default(DateTime))
{...}
Main()
{
M();//使用默認(rèn)值
M(8,"b")://隱式指定方法參數(shù),沒有指定的使用默認(rèn)值
M(6,"v",DateTime.Now);//同上
M(6,dt:DateTime.Now);//顯式的指定參數(shù)名稱,為指定的參數(shù)傳值
}
使用的指導(dǎo)原則:
1、可以為方法和有參屬性指定默認(rèn)值
2、有默認(rèn)值的參數(shù),必須定義在沒有默認(rèn)值的參數(shù)之后
3、默認(rèn)參數(shù)必須是常量
4、ref 和 out參數(shù)不能指定默認(rèn)值
代碼示例:
復(fù)制代碼 代碼如下:
void M(int x=9,string s="a",DateTime dt = default(DateTime))
{...}
Main()
{
M();//使用默認(rèn)值
M(8,"b")://隱式指定方法參數(shù),沒有指定的使用默認(rèn)值
M(6,"v",DateTime.Now);//同上
M(6,dt:DateTime.Now);//顯式的指定參數(shù)名稱,為指定的參數(shù)傳值
}
使用的指導(dǎo)原則:
1、可以為方法和有參屬性指定默認(rèn)值
2、有默認(rèn)值的參數(shù),必須定義在沒有默認(rèn)值的參數(shù)之后
3、默認(rèn)參數(shù)必須是常量
4、ref 和 out參數(shù)不能指定默認(rèn)值
相關(guān)文章
AjaxControlToolkit AjaxFileUpload 顯示英文改成中文的解決方法
AjaxControlToolkit AjaxFileUpload 顯示英文改成中文的解決方法,需要的朋友可以參考一下2013-03-03講解C#設(shè)計(jì)模式編程中享元模式的運(yùn)用
這篇文章主要介紹了C#設(shè)計(jì)模式編程中享元模式的運(yùn)用,享元模式主張限制對(duì)象的數(shù)量來優(yōu)化內(nèi)存使用,需要的朋友可以參考下2016-02-02Unity3D啟動(dòng)外部程序并傳遞參數(shù)的實(shí)現(xiàn)
這篇文章主要介紹了Unity3D啟動(dòng)外部程序并傳遞參數(shù)的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-04-04C# 編碼好習(xí)慣,獻(xiàn)給所有熱愛c#的同志
c#編寫者,需要培養(yǎng)的一些好習(xí)慣2009-02-02詳解WPF雙滑塊控件的使用和強(qiáng)制捕獲鼠標(biāo)事件焦點(diǎn)
這篇文章主要為大家詳細(xì)介紹了WPF中雙滑塊控件的使用和強(qiáng)制捕獲鼠標(biāo)事件焦點(diǎn)的實(shí)現(xiàn),文中的示例代碼講解詳細(xì),感興趣的可以嘗試一下2022-07-07