[C#] переопределение операторов true и false?

9173306234

в чем смысл было вводить возможность переопределения оператора true и false одновременно ?

Helga87

ы?

gopnik1994

я даже больше скажу: ыыы?

9173306234


а если серьезно ?

Helga87

Непонятно, что ты спросил. Попробуй переформулировать вопрос, примеры приведи, что ли.

9173306234

class A{
...
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 одновременно
зачем нужны такие дубликаты операторов по функциональности ?

Dasar

msdn сложно было прочитать?
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.

Helga87

О. Круто, спасибо за пример. Не знал раньше, что в C# есть такие операторы.

9173306234

спасибо.
Оставить комментарий
Имя или ник:
Комментарий: