国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

有關.NET參數傳遞的方式引發的思考

2024-07-10 12:49:22
字體:
來源:轉載
供稿:網友

下面就簡單的介紹一下.NET的一些常用參數用法,如有不足還望指正,也歡迎大家在下面留言討論,分享自己的見解。

一.DotNet參數概述:

    .NET中參數(形式參數)變量是方法或索引器聲明的一部分,而實參是調用方法或索引器時使用的表達式。

    在CLR中,默認的情況下所有的方法參數都是傳值的。在傳遞引用類型的對象時,對一個對象的引用會傳遞給方法。這里的船引用本身是以傳值的方式傳給方法的。這也意味著方法能夠修改對象,而調用者能看到這些修改。對于值類型的實例,傳給方法的實例的一個副本。意味著方法將獲得它專用的一個值類型實例副本,調用者中的實例不受影響。

    在CLR中允許以傳引用而非傳值的方式傳遞參數,在C#中使用out和ref來實現傳遞引用的方式傳值。在C#中使用out和ref來實現傳遞引用的方式傳值,這兩個關鍵字告訴編譯器生成元數據來指明該參數是傳引用的,編譯器將生成代碼來傳遞參數的地址,而不是傳遞參數本身。為值類型使用out和ref,效果等同于以傳值的方式傳遞引用類型。  

    常用的參數主要有基本類型參數,泛型參數,以及<in T>和<out T>,dynamic等等。例如<in T>和<out T>,在CLR中支持泛型類型的可變性,C#在4.0時獲得了生命泛型遍體所必須的語法,并且現在編譯器也能夠知道接口和委托可能的轉換。可變性是以一種類型安全的方式,講一個對象作為另一個對象來使用。可變性應用于泛型接口和泛型委托的類型參數中。協變形用于向調用者返回某項操作的值;逆變性是指調用者想API傳入值;不變性是相對于協變性和逆變性,是指什么也不會發生。對于這方面的知識非常的豐富,有興趣的可以自行了解,這里就不做詳細的介紹了。dynamic類型,C#是一門靜態類型的語言,在某些情況下,C#編譯器要尋找特定的名稱而不是接口。dynamic可以在編譯時做任何事,到執行時再由框架進行處理。有關動態類型的介紹也不做更深入的介紹。

    在.NET中參數的使用方法主要為可選參數、命名參數、可變數量參數等等。本文下面也是主要介紹這三種參數的使用方法。

二.DotNet參數用法:

    以下是主要介紹三種參數的用法:可選參數;命名實參;傳遞可變數量的參數。  

   1.可選參數:

     (1).基本用法:

        如果某個操作需要多個值,而有些值在每次調用的時候又往往是相同的,這時通常可以使用可選參數。在C#以前實現可變參數的功能,往往聲明一個包含所有可能參數的方法,其他方法調用這個方法,并傳遞恰當的默認值。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 武乡县| 阿拉善右旗| 宁海县| 萍乡市| 遂昌县| 黄梅县| 福建省| 八宿县| 桓台县| 玉溪市| 乾安县| 重庆市| 三明市| 安阳市| 屏山县| 昔阳县| 盐源县| 无为县| 成都市| 柯坪县| 赤峰市| 辽宁省| 萨迦县| 绥芬河市| 潮州市| 阳原县| 大荔县| 济源市| 建昌县| 新竹县| 陆川县| 古浪县| 周口市| 达尔| 石台县| 建阳市| 金山区| 陵川县| 革吉县| 如东县| 丰宁|