C#關鍵字-var、object、dynamic的差異
一、object
當指定字串給object型別的物件後,因為object是所有物件的根型別,

因此在做運算時該object型別必須明確轉型成int,否則在編譯前將會指出錯誤訊息,
改成如下

二、var
當使用var宣告變數時,即在編譯器就會經由初始化變數來推斷該型別,
因為於編譯時已決定好型別了,所以該變數在做運算時可不用再做轉型。

由上例,如果之後再指定字串給原本型別為int的變數,
則無法編譯。

二、dynamic
其實dynamic具有動態語言特性的靜態型別
宣告為dymanic型別的變數,由於只會在執行時辨識型別,
所以不需要在運算時做轉型動作,
也可以將其他型別指定給該變數。

參考資料: