Что ж, ключевое слово default
не самое популярное ключевое слово, я думаю, и, на мой взгляд, оно лучше всего подходит для общих целей, например:
public class Foo<T>{
private T _instance;
public Foo<T>(){
_instance = default(T);
}
}
, чтобы получитьновый экземпляр T по умолчанию. На самом деле нет причин использовать его, как сценарий 1. В вашем сообщении.
Однако использование var
- это другой вопрос, и многие рассматривают это как вопрос читабельности.Я по умолчанию var
, когда я пишу код просто потому, что мне легче читать:
var me = new Person();
Кажется, немного с точки зрения читабельности, чтобы сделать
Person me = new Person();
Другой случайЯ рекомендую var
, если что-то изменится.Рассмотрим следующий пример:
public decimal Calculate(decimal one, decimal two){
return one + two;
}
И еще где-то в вашем коде:
decimal d = Calculate(1M, 2M);
Если вы по какой-то причине измените тип возвращаемого значения Calculate
, скажем, на double
вам нужно изменить все места, где вы строго определили переменную.
Если вы вместо этого сделаете
var d = Calculate(1M, 2M)
, вам не нужно об этом беспокоиться.Пример Double / Decimal немного прост, но с точки зрения рефакторинга и взаимодействия классов, я нашел это очень полезным.