如果我們不確定要儲存在變數中的值的型別,該怎麼辦?如何在 C# 中處理這種情況?


由於 C# 是一種強型別語言,因此每個變數和常量都具有預定義的型別。在使用任何變數之前,我們必須告訴編譯器該變數將儲存哪種型別的值。

如果我們不確定型別,則可以使用動態程式設計來處理。動態程式設計由 **dynamic** 關鍵字支援。

dynamic 關鍵字用於宣告動態型別。動態型別告訴編譯器該物件被定義為動態的,並在編譯時跳過型別檢查,將型別檢查延遲到執行時。所有語法都將在執行時進行檢查,並在執行時丟擲錯誤。

示例

 即時演示

using System;
namespace DemoDynamicKeyword{
   class Program{
      static void Main(string[] args){
         dynamic MyDynamicVar = 100;
         Console.WriteLine("Value: {0}, Type: {1}", MyDynamicVar, MyDynamicVar.GetType());
         MyDynamicVar = "Hello World!!";
         Console.WriteLine("Value: {0}, Type: {1}", MyDynamicVar, MyDynamicVar.GetType());
         MyDynamicVar = true;
         Console.WriteLine("Value: {0}, Type: {1}", MyDynamicVar, MyDynamicVar.GetType());
         MyDynamicVar = DateTime.Now;
         Console.WriteLine("Value: {0}, Type: {1}", MyDynamicVar, MyDynamicVar.GetType());
      }
   }
}

輸出

以上示例的輸出如下所示。

Value: 100, Type: System.Int32
Value: Hello World!!, Type: System.String
Value: True, Type: System.Boolean
Value: 01-01-2014, Type: System.DateTime

更新於: 2020 年 8 月 4 日

67 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.