動態型別

dynamic 關鍵字宣告一個在編譯時未知型別的變數。dynamic 變數可以包含任何值,並且值的型別可以在執行時更改。

正如“.NET 中的超程式設計”一書所述,C#沒有 dynamic 關鍵字的支援型別:

dynamic 關鍵字啟用的功能是一組聰明的編譯器操作,它們在本地執行範圍的站點容器中發出和使用 CallSite 物件。編譯器管理程式設計師通過那些 CallSite 例項感知的動態物件引用。在編譯時獲得動態處理的引數,返回型別,欄位和屬性可以用一些後設資料標記,以指示它們是為動態使用而生成的,但它們的基礎資料型別將始終為 System.Object