Кто-нибудь имеет конкретную информацию о том, как С# обрабатывает сравнения с типами Nullable<T>
, когда одна сторона сравнения имеет значение null?
Как я понимаю из экспериментов с компилятором, кажется, что сравнение всегда возвращает false, но я не могу найти документацию, подтверждающую это. Является ли это реальной особенностью языка (и, следовательно, что-то, на что я могу рассчитывать), или это детали реализации, которые могут измениться в будущих версиях?
Другими словами, возвращает ли следующий метод true значение y.HasValue
, и можете ли вы указать мне какую-нибудь документацию, подтверждающую, что это происходит?
public bool foo(int x, int? y)
{
return x < y;
}