中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

了解 C# 4 中的 Dynamic 關鍵字

  dynamic 關鍵字和動態語言運行時 (DLR) 是 C# 4 和 Microsoft .NET Framework 4 中的重大新增功能。 這些功能在宣布時就引起了人們的極大興趣,并伴隨著許多疑問。 同時人們也給出了很多答案,但這些答案現在已散布于各種文檔以及各種技術博客和文章之中。 這樣,人們在各種論壇和會議上總是一遍又一遍地提出相同的問題。

  本文全面概述了 C# 4 中新增的動態功能,并且深入探討了這些功能如何同其他語言和框架功能(例如反射或隱式類型化變量)一起使用。 鑒于已有大量信息可用,我有時會重新使用一些經典示例,并提供指向原始源的鏈接。 我還將提供指向相關內容的大量鏈接,供您進一步閱讀。

  什么是“動態”?

  編程語言有時可劃分為靜態類型化語言和動態類型化語言。 C# 和 Java 經常被認為是靜態類型化語言的例子,而 Python、Ruby 和 JavaScript 是動態類型化語言的例子。

  一般而言,動態語言不執行編譯時類型檢查,僅在運行時識別對象的類型。 這種方法有利有弊:代碼編寫起來往往更快、更容易,但同時,由于您不會獲得編譯器錯誤,只能通過單元測試和其他方法來確保應用程序正常運行。

  C# 最初是作為純靜態語言創建的,但 C# 4 添加了一些動態元素,用以改進與動態語言和框架之間的互操作性。 C# 團隊考慮了多種設計選項,但最終確定添加一個新關鍵字來支持這些功能:dynamic。

  dynamic 關鍵字可充當 C# 類型系統中的靜態類型聲明。 這樣,C# 就獲得了動態功能,同時仍然作為靜態類型化語言而存在。 若要了解為何以及如何做出了這樣的決定,請參考 PDC09 (microsoftpdc.com/2009/FT31) 上由Mads Torgersen 撰寫的演示文稿“C# 4 中的動態綁定”。 尤其是,動態對象被認定是 C# 語言中的“一等公民”,因此沒有用于打開或關閉動態功能的選項,并且沒有向 C# 添加過類似于 Visual Basic 中的 Option Strict On/Off 之類的功能。

  當您使用 dynamic 關鍵字時,您就告訴編譯器關閉編譯時檢查。 網上以及 MSDN 文檔中 (msdn.microsoft.com/library/dd264736) 有大量關于如何使用該關鍵字的示例。 下面是一個常見示例:

dynamic d = "test";
Console.WriteLine(d.GetType());
// Prints "System.String".
d = 100;
Console.WriteLine(d.GetType());
// Prints "System.Int32".     

NET技術了解 C# 4 中的 Dynamic 關鍵字,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美精品久久久 | av日韩高清 | 天天干人人 | 福利一区在线观看 | 亚洲在线日韩 | 黄色免费在线观看网站 | 日本精品一区二区三区在线观看视频 | 四虎影院美女 | 81精品国产乱码久久久久久 | 91精品国产91久久久久久密臀 | 久久久久久免费精品一区二区三区 | 一区二区三区精品视频 | 成人免费看电影 | 亚洲欧美视频 | 黄色大片免费看 | 你懂的免费在线 | 日韩成人在线免费视频 | 色综合一区二区 | 伊人激情综合网 | 欧美不卡在线 | 国际精品鲁一鲁一区二区小说 | 久久久久91 | 色在线看 | 免费在线观看av网址 | 亚洲一区视频 | 成人欧美一区二区三区在线观看 | 综合久| 日本精品久久久久 | 国产视频观看 | 欧美精品一区二区三区在线播放 | 欧美日韩国产在线 | 免费在线国产视频 | 麻豆hd| www.午夜| 亚洲欧美一区二区三区视频 | 免费观看一级特黄欧美大片 | 欧美中文 | 日韩免费一区二区 | 中文字幕乱码一区二区三区 | 日韩成人免费av | 国产激情91久久精品导航 |