相同在「CLR via C#」一書中提到動態關鍵字對應的FCL類型是System.Object。請澄清這一點。動態與對象
Q
動態與對象
3
A
回答
5
這不從的C#的角度來看,在所有的同樣的事情......但在編譯的代碼,一個變量聲明爲類型dynamic
通常(可能總是)與CLR領域或類型的局部變量對應object
。
C#編譯器負責確保使用該值的任何源代碼都具有對其應用的動態行爲。 object
只是表示用於存儲的編譯器。它也適用於[Dynamic]
屬性,以便其他代碼知道它將被動態處理。
例如,考慮一下:
public class Foo
{
public dynamic someField;
}
我相信一定會被編譯成IL相當於:
public class Foo
{
[Dynamic]
public object someField;
}
現在
,如果你寫:
Foo foo = new Foo();
foo.someField = "hello";
Console.WriteLine(foo.someField.Length);
編譯器使用屬性要知道foo.someField
是動態的,所以Length
本身ty應該是動態綁定的。
2
相關問題
- 1. LINQ與動態對象
- 2. 動態與對象類型
- 3. 的Javascript:動態與對象
- 4. 屬性與動態對象
- 5. 動態對象
- 6. 動態js速度與許多對象
- 7. 如何訪問與動態proprierties對象
- 8. ValueInjector與動態代理對象
- 9. Breeze JS客戶端與動態對象
- 10. JPA /休眠與動態對象模型
- 11. 與動態性能並行的對象
- 12. 訪問對象動態與適配器
- 13. 對象分配與動態變量
- 14. 泛型類型vs動態與對象
- 15. 對象池與動態分配
- 16. 動態拉姆達與對象
- 17. 動態Linq where子句與對象?
- 18. Java方法與動態對象
- 19. Elasticsearch映射與動態密鑰對象
- 20. 動態JavaFX對象
- 21. RavenDB動態對象
- 22. NBA動態對象
- 23. 動態XmlRootElement對象
- 24. 動態對象場
- 25. Javascript動態對象
- 26. Haxe Starling對象池與動態對象類型
- 27. 蹣跚與動態參數,傳遞對象[]到對象
- 28. 對象點與動態創建的對象?
- 29. c#動態json對象與動態名稱問題
- 30. 自定義微調器與動態對象和動態圖標