Я перегружаю lessthan-оператор в c #, и мне интересно, нужно ли это проверять на ноль.Ниже вы можете найти пример:
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;
}
Я не нашел никаких инструкций по этому вопросу.Но, может быть, я что-то пропустил.