中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Visual C# 2010新特性之dynamic類型怎么用

發布時間:2021-12-01 11:41:26 來源:億速云 閱讀:154 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關Visual C# 2010新特性之dynamic類型怎么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

在大多數情況下dynamic和object類型有些相似,但是在編譯時,dynamic類型被假定為支持任何操作,也就是說dynamic類型的對象可以是一個Office對象,可以是一個COM對象或者是DOM對象,而如果在運行時發現該對象不是期望的對象則會拋出一個運行時異常。

由于把一個對象定義為dynamic類型,因此在代碼中編寫任意調用在編譯時都是合法的(這一點在聲明為object類型時不能成立)。例如以下代碼能夠通過編譯:

Visual C# 2010新特性之dynamic類型怎么用

運行后發現obj并不支持UpdateWordDocument方法,因此會拋出異常:

Visual C# 2010新特性之dynamic類型怎么用

大多數動態類型操作的結果仍是動態類型,例如編寫如下代碼時智能提示會顯示變量的類型是dynamic:

Visual C# 2010新特性之dynamic類型怎么用

在包含從dynamic類型到其他類型的轉換,或者將dynamic類型作為構造函數參數的操作結果不會返回dynamic類型,例如以下代碼:

Visual C# 2010新特性之dynamic類型怎么用

此時c不是dynamic類型。

開發人員可以輕松的在dynamic和非dynamic類型之間轉換,正是由于dynamic類型在編譯時被視為支持任何操作,所在只需要保證它們之間的轉換是正確的數據類型轉換,否則運行時會發生錯誤。例如以下代碼:

Visual C# 2010新特性之dynamic類型怎么用

使用了通過動態類型參數的方法會在運行時解析而不是在編譯時解析,在.NET Framework 4 Beta1中引入了新的dynamic language runtime(DLR),它為C#中的dynamic類型提供了支持,而且提供了對諸如IronPython和IronRuby等動態語言的實現。

Visual C# 2010使用dynamic類型和命名和可選參數為與COM API交互提供了便利。許多COM方法接收各種類型參數并且通常會返回object類型值,開發人員需要進行類型轉換以進行進一步操作。在.NET Framework 4中,如果使用/link開關編譯程序,dynamic類型允許在COM調用時將object類型作為dynamic類型對待,這樣可以避免類型轉換。例如以下代碼(此代碼系摘錄,機器原因未經過本人測試)

Visual C# 2010新特性之dynamic類型怎么用

感謝各位的閱讀!關于“Visual C# 2010新特性之dynamic類型怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

富裕县| 阿坝| 麻城市| 靖宇县| 莱芜市| 同仁县| 威海市| 上林县| 平凉市| 石景山区| 育儿| 花莲市| 合阳县| 东莞市| 武穴市| 繁峙县| 额济纳旗| 深水埗区| 高要市| 海淀区| 无棣县| 闵行区| 建水县| 江阴市| 博白县| 玉门市| 洮南市| 绥阳县| 乌兰察布市| 那曲县| 丰原市| 石嘴山市| 晋江市| 柳江县| 南川市| 西乌| 伊吾县| 托克逊县| 安西县| 凤冈县| 汝城县|