2. True Operator

רוצים לכתוב קוד כזה?

1
2
3
4
5
6
Class1 class1 = new Class1();
if (class1)
{
// ...
}

אתם יכולים לעשות דבר כזה (ואל תעשו!)

1
2
3
4
5
6
7
8
9
public static bool operator true(Class1 class1)
{
// ...
}
public static bool operator false(Class1 class1)
{
// ...
}

למשל בדיקת null כמו בימי ה-C העליזים לבדיקה האם פוינטר מצביע ל-NULL או לא:

1
2
3
4
5
6
7
8
9
public static bool operator true(Class1 class1)
{
return class1 != null;
}
public static bool operator false(Class1 class1)
{
return class1 == null;
}

ואז

1
2
3
4
5
6
Class1 class1;
if (class1)
{
class1.Print();
}
שתף