У меня есть следующий класс:Может ли общий параметр Nullable?
public class RangeFilter<T> : IFilter<T> where T : IConvertible, IComparable {
public T Maximum { get; private set; }
public T Minimum { get; private set; }
public RangeFilter(T maximum) {
Minimum = null;
Maximum = maximum;
}
}
T может быть Int, Двойной ... Когда я прохожу только максимальное значение мне нужно минимальный, чтобы быть пустыми, но когда я делаю, что я получаю следующее ошибка:
Cannot convert null to type parameter 'T' because it could be a non-nullable value type.
Consider using 'default(T)' instead.
причина, почему я не хочу использовать значение по умолчанию (T), потому что мне нужно проверить позже, если минимум определяется и по умолчанию (T) является допустимым значением для Minimum.
Вот где я возглавлял после того, как удалил свой ответ. Учитывая, что использование предполагает, что 'T' представляется числовым, я думаю, что ограничение' struct' было бы подходящим независимо от этой проблемы. – spender