亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C#中命名參數(shù)和可選參數(shù)

 更新時(shí)間:2022年04月20日 16:04:43   作者:農(nóng)碼一生  
這篇文章介紹了C#中的命名參數(shù)和可選參數(shù),文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、簡(jiǎn)介

設(shè)計(jì)方法的參數(shù)是,可以將部分參數(shù)和全部參數(shù)分配默認(rèn)值,然后調(diào)用這些方法的時(shí)候可以選擇不提供部分實(shí)參,使用參數(shù)定義的默認(rèn)值,另外,還可以在調(diào)用方法的時(shí)候通過(guò)指定參數(shù)名稱來(lái)傳遞實(shí)參。

二、代碼案例

    class Program
    {
        private static int s = 0;
        private static int s_n = 0;

        private static void Mothed(int x = 9, string s = "A", DateTime dt = default(DateTime), Guid guid = new Guid())
        {
            Console.WriteLine("x={0},s={1},dt={2},guid={3}", x, s, dt, guid);
        }
        static void Main(string[] args)
        {

            Mothed();//等同于Mothed(9,"A",default(Datetime),new Guid())
            Mothed(8, "X");//等同于Mothed(8,"X",default(Datetime),new Guid())
            Mothed(5, guid: Guid.NewGuid(), dt: DateTime.Now);//等同于Mothed(5,"A",DateTime.Now,Guid.NewGuid())
            Mothed(s_n++, s_n++.ToString());//等同于Mothed(0,"1",default(Datetime),new Guid());
            Mothed(s: (s_n++).ToString(), x: s_n++);//等同于一下兩行代碼,注意此處的參數(shù)順序無(wú)關(guān),和形參的名稱對(duì)應(yīng)
            //string t1="2";
            //int32 t2=3;  
            //Mothed(t2,t1,default(Datetime),new Guid())
        }
    }

向方法傳遞實(shí)參時(shí),編譯器從左到右的順序?qū)?shí)參進(jìn)行求值。在對(duì)Mothed的第四個(gè)調(diào)用中s_n的當(dāng)前默認(rèn)值是0,先遞增然后等于1轉(zhuǎn)為string傳遞給s,然后繼續(xù)遞增到2(s_n++先使用后遞增)傳給x。

三、總結(jié)

1.實(shí)參可按照任意順序傳遞,但命名實(shí)參必須且只能出現(xiàn)在實(shí)參列表尾部,如上述代碼第三種調(diào)用方式。
2.可以按照名稱將實(shí)參傳遞給沒(méi)有默認(rèn)值的參數(shù)。但所有必須的實(shí)參都必須傳遞(無(wú)論按照位置還是按照名稱),編譯器才能編譯代碼。
3.C#不允許省略逗號(hào)之間的實(shí)參,比如M(1,,DateTime.New).因?yàn)檫@樣會(huì)造成可讀性的影響,程序員將被迫去讀 逗號(hào),對(duì)于沒(méi)有默認(rèn)值的參數(shù),如果想省略它們的實(shí)參,以傳參數(shù)名的方式傳遞實(shí)參即可。

到此這篇關(guān)于C#中命名參數(shù)和可選參數(shù)的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C#實(shí)體類轉(zhuǎn)換的兩種方式小結(jié)

    C#實(shí)體類轉(zhuǎn)換的兩種方式小結(jié)

    這篇文章主要介紹了C#實(shí)體類轉(zhuǎn)換的兩種方式小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • C#實(shí)現(xiàn)將日期格式化為指定格式

    C#實(shí)現(xiàn)將日期格式化為指定格式

    這篇文章主要為大家詳細(xì)介紹了C#如何使用DateTime.Now.ToString方法將日期格式化為指定格式,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考下
    2024-01-01
  • C#對(duì)桌面應(yīng)用程序自定義鼠標(biāo)光標(biāo)

    C#對(duì)桌面應(yīng)用程序自定義鼠標(biāo)光標(biāo)

    這篇文章介紹了C#對(duì)桌面應(yīng)用程序自定義鼠標(biāo)光標(biāo)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • C#組件系列 你值得擁有的一款Excel處理神器Spire.XLS

    C#組件系列 你值得擁有的一款Excel處理神器Spire.XLS

    又一款Excel處理神器Spire.XLS,這篇文章主要為大家詳細(xì)介紹了第三方組件Spire.XLS,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 詳解C#中yield關(guān)鍵字的用法

    詳解C#中yield關(guān)鍵字的用法

    yield?關(guān)鍵字的用途是把指令推遲到程序?qū)嶋H需要的時(shí)候再執(zhí)行,這個(gè)特性允許我們更細(xì)致地控制集合每個(gè)元素產(chǎn)生的時(shí)機(jī),那么下面就一起來(lái)看下怎么用?yield?關(guān)鍵字吧
    2023-07-07
  • C#中DateTimePicker默認(rèn)值顯示為空的問(wèn)題

    C#中DateTimePicker默認(rèn)值顯示為空的問(wèn)題

    這篇文章主要介紹了C#中DateTimePicker默認(rèn)值顯示為空的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • C#使用SQL DataAdapter數(shù)據(jù)適配代碼實(shí)例

    C#使用SQL DataAdapter數(shù)據(jù)適配代碼實(shí)例

    今天小編就為大家分享一篇關(guān)于C#使用SQL DataAdapter數(shù)據(jù)適配代碼實(shí)例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10
  • C#單線程和多線程端口掃描器詳解

    C#單線程和多線程端口掃描器詳解

    這篇文章主要為大家詳細(xì)介紹了C#單線程和多線程端口掃描器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • C#中方法的詳細(xì)介紹

    C#中方法的詳細(xì)介紹

    本篇文章介紹了,C#中方法的詳細(xì)說(shuō)明。需要的朋友參考下
    2013-04-04
  • C#編程中使用設(shè)計(jì)模式中的原型模式的實(shí)例講解

    C#編程中使用設(shè)計(jì)模式中的原型模式的實(shí)例講解

    這篇文章主要介紹了C#編程中使用設(shè)計(jì)模式中的原型模式的實(shí)例講解,原型模式創(chuàng)建新對(duì)象方便快捷,而且可在運(yùn)行時(shí)根據(jù)需要通過(guò)克隆來(lái)添加和去除他們,也可在程序運(yùn)行是根據(jù)情況來(lái)修改類內(nèi)部的數(shù)據(jù),需要的朋友可以參考下
    2016-02-02

最新評(píng)論