[C#] переопределение операторов true и false?
ы?
я даже больше скажу: ыыы?
а если серьезно ?
Непонятно, что ты спросил. Попробуй переформулировать вопрос, примеры приведи, что ли.
...
int i;
public A(int i){this.i=i;}
bool public static bool operator true(A a){return i!=0;}
...
}
....
psvm{...
A a = new A(5);
if(a){...}
}
Но можно также определить operator false.
public static operator false(A a) - зачем: если operator true возвратил false, значит и есть false.
т.е. при определенных operator true и operator false, если объект есть "тру"(operator true == true то необязательно это значит, что он не "фальш" (operator false == false т.е. возможно operator false == operator true == true одновременно
зачем нужны такие дубликаты операторов по функциональности ?
Returns the bool value true to indicate true and returns false otherwise when defined by a user-defined type. This is useful for types that represent true, false, and null (neither true nor false), as used in databases.
О. Круто, спасибо за пример. Не знал раньше, что в C# есть такие операторы.
спасибо.
Оставить комментарий
9173306234
в чем смысл было вводить возможность переопределения оператора true и false одновременно ?