> var,局部隐式类型强调’what’而不是’how’,
> object,System.Object的别名,和
>动态,禁用编译器检查,在运行时添加方法/属性
虽然那里有很多关于这些的文章,但我发现的并没有把它们放在一起,我不得不承认,它仍然有点模糊.
添加到这个liNQ,lambda表达式,匿名类型,反射……它变得更加不稳定.
我想看一些例子,也许是对比优势/劣势,帮助我巩固对这些概念的把握,并帮助我理解何时,何地以及如何在它们之间进行选择.
谢谢!
解决方法 >使用var来保持代码简短和可读性,或者使用匿名类型时:var dict = new Dictionary<int,List<string>>();var x = db.Person.Select(p => new { p.name,p.Age });
>动态绑定有用或需要时使用动态.或者,当您需要根据对象的运行时类型决定调用哪个方法时.
>尽可能少地使用对象,更喜欢使用特定类型或泛型.一个有用的地方是当你有一个用于锁定的对象时:
object m_lock = new object();lock (m_lock){ // do something}总结
以上是内存溢出为你收集整理的c# – 动态,对象,Var全部内容,希望文章能够帮你解决c# – 动态,对象,Var所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)