有人可以通过一些编程示例来帮助我解决C#中Dynamic,Var和Object之间的确切区别。我在网上搜索,但并没有确切的区别。
有人可以帮我吗?
答案 0 :(得分:1)
我是C#编译器
当我看到 object 和 dynamic 时,我通常对自己说,这些家伙可以是任何东西,最好忽略所有甜蜜的编译器问题,并让开发人员自己照顾自己,让我的朋友C#运行时在以后解决这些问题
当我看到 var 时,我知道开发人员正在依靠我来确定类型,所以我应该做我的工作:)。
void Main()
{
dynamic person = new { name = "name" };
var age = person.age; // throw when you run the code
var name = person.name; // I'm cool with it
object isThisLove;
isThisLove.IsReal(); //compiler will throw
var isLoveReal = (((Love)isThisLove).IsReal()); // sweet, compiler will ignore, but runtime will throw if love is not Love
}
public class Love
{
public bool IsReal() { return false; }
}
答案 1 :(得分:0)