var dog =dogCage.TakeOut();直接把值返回給了dog,dog算什么類型,可以直接輸出嗎
var dog =dogCage.TakeOut();直接把值返回給了dog,如果有多個值,dog能裝下嗎,還是只會存儲最后一個值,dog能調用Dog類PrintName(),原理是什么
var dog =dogCage.TakeOut();直接把值返回給了dog,如果有多個值,dog能裝下嗎,還是只會存儲最后一個值,dog能調用Dog類PrintName(),原理是什么
2017-08-02
舉報
2017-08-03
dog的類型是TakeOut()函數返回的類型,如果返回的是數組就可以儲存多個值,
dog可以調用Dog類的PrintName(),是因為dog被動態定義為了Dog類(TakeOut()函數返回了Dog類)
2017-08-03
C#提供了三種類似功能的關鍵字:
object:所有類型的基類,可以存儲任何類型,但不能調用其方法(強制轉換后可以);對應編碼階段,由編碼人員判定它的類型進行強轉。
var:類型占位符,由編譯器判定類型,用它定義的變量不用強制轉換,可以調用方法。
dynamic:真正的動態類型,它的類型在運行是解析,可以使用方法(但是在編碼時沒有提示)。