Оператор default
Оператор default возвращает значение по-умолчанию для указанного типа, все биты которого инициализированы 0 (zero bit pattern).
Для ссылочных типов оператор вернет null. Для размерных типов будет создан новый экземпляр структуры со значениями полей инициализированных умолчательными значениями с нулевым значением битов. Для числовых типов это 0, для булевых false, для указателей на ссылочные типы null.
Оператор default используется в классах-обобщениях (generics), или методах, для создания экземпляров объектов, тип которых соответствует типу параметра. Ниже приведен пример такого использования, лишний код для краткости опущен.
public abstract class NumericValidator<T> : CellValidator where T : struct, IComparable<T>, IConvertible { private T _currentValue; public NumericValidator() { _currentValue = default(T); } }