1. 首页
  2. 编程语言
  3. C#
  4. c#中object、var和dynamic的区别小结

c#中object、var和dynamic的区别小结

上传者: 2021-08-08 08:52:50上传 PDF文件 124.65 KB 热度 15次

我们经常看到很多C#开发者并不能区分object与dynamic变量。这篇文章将梳理object与dynamic区别的关键点。总的来说,dynamic与object都不进行编译时类型检查,只有在运行时才会对变量类型进行检查,同时,dynamic和object修饰的变量都能存储任意数据类型。稍后我会讲一下为什么要引入dynamic。(明明object已经存在了,为什么还要引入dynamic?)下面一些要点解释了两者的主要区别Object: 对于object,编译器所给的提示信息较少。用法:dynamic a = "Rohatash Kumar";string a1 = a;Object: C# 1.0引入Dynamic: C# 4.0引入Object: 在使用object时,你必须将object转换为原始数据类型才能进行预期操作。dynamic与object总结:Object 在我们不知道数据类型时很有用。var声明的变量都是静态类型,dynamic是动态类型。dynamic的引入是为了支持像ruby,python这样的动态语言。

下载地址
用户评论