最近我看到一个人大量使用var和默认关键字声明变量(和每个声明),像这样:
var employee = default(Employee); //Employee is a class var errorInfo = default(ErrorInfo); //ErrorInfo is struct; Blank is default value var salary = default(Double); var isManager = default(Boolean?);
而不是使用:
Employee employee = null; //Employee is a class ErrorInfo errorInfo = Blank; //ErrorInfo is struct; Blank is default value Double salary = 0.0; Boolean? isManager = null;
或者,而不是使用甚至:
Employee employee; //Employee is a class ErrorInfo errorInfo; //ErrorInfo is struct; Blank is default value Double salary; Boolean? isManager;
现在使用var和default作为每个变量的声明是我不习惯的.
想知道:
– 如果这是推荐做法?
– 您的意见和偏好?
PS:
– 已经经历了Use of var keyword in C#,Use of “var” type in variable declaration和https://stackoverflow.com/questions/633474/c-do-you-use-var,然而,认为这个问题虽然有所不同,因为它只是在声明/初始化期间,而不是围绕作业.
– 我明白了剪辑2和片段3之间的区别.但是,问题更多的是关于片段1.
– 如果你强烈地觉得这个问题属于程序员,stackexchange会自动移动.
解决方法
我不会说任何关于“var”的事情,在过去曾经有过这样的评论和讨论(足够的话)
关于“default()”我不会使用它来初始化一个已知的类型,而只是在泛型.它有助于透明地处理值类型或引用类型,允许您提供默认值(返回)值或可用于比较.