C#中“动态”关键字的用途是什么?为什么我需要或不想使用它?C#中“动态”关键字的用途是什么?
回答
在静态类型的世界里,动态为开发人员提供了很多绳索来挂起自己。处理编译时可以知道类型的对象时,应该不惜一切代价避免动态关键字。静态打字时,动态不会形成有意义的针迹。如果您正在处理未知或动态类型,通常需要通过反射与它进行通信。反射代码不容易阅读,并且具有上述动态类型的所有缺陷。在这种情况下,动态变得很有意义。
在底层中,动态类型编译为包裹反射码,除非对象是一个COM对象(在这种情况下,操作是通过IDispatch动态调用)或对象实现IDynamicObject接口,其通过IronPython的广泛使用IronRuby以及即将推出的API。
更多的MSDN
感谢您的回复。 –
@Jaguar Hallu Hallu –
它被引入允许与动态语言进行更简单的互操作。我个人不推荐使用它,除非你打算用动态编写的代码进行接口,或者如果你有一个非常具体的理由要做。
。 –
- 1. C++中'和','或'等关键字的用途是什么?
- 2. C#关键字固定/不安全的用途是什么?
- 3. 联合中的“受保护”关键字的用途是什么?
- 4. 方法参数中有final关键字的用途是什么?
- 5. 在Ethereum Solidity中,“memory”关键字的用途是什么?
- 6. Kotlin中`external`关键字的用途是什么?
- 7. Vala中“ref”和“out”关键字的用途是什么?
- 8. QML中默认关键字的用途是什么?
- 9. DROOLS中'package'关键字的用途是什么?
- 10. C#中的Register关键字是什么?
- 11. C++中的explicit关键字是什么?
- 12. SQL关键字“AS”的用途是什么?
- 13. 什么是静态方法来实现“这个”关键字的正确途径
- 14. C#中属性的用途是什么?
- 15. c#中backgroundworker的用途是什么?
- 16. “event”的用途关键字
- 17. Windows +空格键的用途是什么?
- 18. Mysql索引键的用途是什么?
- 19. 什么是C#“checked”关键字?
- 20. 鉴于JavaScript已关闭,此关键字的用途究竟是什么?
- 21. 在这个Clojure doto宏示例中,printed关键字的用途是什么?
- 22. C#中外部静态构造函数的用途是什么?
- 23. C++中静态类的用途是什么?
- 24. 新的'动态'C#4.0关键字是否弃用'var'关键字?
- 25. -m开关的用途是什么?
- 26. 多态类型的用途是什么?
- 27. 瞬态变量的用途是什么?
- 28. 在visual c中使用的fastcall关键字是什么?
- 29. C#中global ::关键字的用法是什么?
- 30. C#中`default`关键字的用法是什么?
你的意思主要_purpose_?这可能是为了缓解COM互操作(就像其他功能,如命名和可选参数),但我没有任何规范的来源,虽然我记得读过它。我相信Google博士可以帮忙。 –
很有意思。为什么两个投票反对?我的问题出了什么问题? –
@BehnamEsmaili - 不是我的失望,但很可能是因为已经有几篇关于这个的帖子。 –