требуется перегрузка оператора< и проверка на ноль

Я перегружаю оператор lessthan в С# и мне интересно, нужно ли это проверять на нуль. Ниже вы можете найти пример:

public static bool operator <(MyClass x, MyClass y)
{
  if (x == null && y == null)
  {
    return false;
  }
  if (x == null)
  {
    return true; //false?
  }
  if (y == null)
  {
    return false; //true?
  }
  return x.Value < y.Value;
}

Или это правильно:

public static bool operator <(MyClass x, MyClass y)
{
  return x.Value < y.Value;
}

Инструкции по этому поводу не нашел, но может что-то упустил.

14
задан vulkanino 8 March 2012 в 13:39
поделиться