3. Null Operator

במקום לכתוב קוד כזה

1
2
3
4
5
6
Class1 x = GetClass1();
if (x == null)
{
x = new Class1();
}

אתם יכולים לכתוב קוד כזה:

1
x = GetClass1() ?? newClass1();

לא ברור כמה זה קריא.

שימושים:

במקום

1
2
3
4
5
6
7
8
9
10
11
12
13
14
private Class1 m_MyMember;
public Class1 MyProperty
{
get
{
if (m_MyMember == null)
{
m_MyMember = new Class1();
}
return m_MyMember;
}
}

תוכלו לכתוב את הקוד הבא:

1
2
3
4
5
6
7
8
public Class1 MyProperty
{
get
{
m_MyMember = m_MyMember ?? new Class1();
return m_MyMember;
}
}

כלומר הקוד

1
x = a ?? b;

שקול לכתיבה

1
2
3
4
5
6
x = a;
if (x == null)
{
x = b;
}
שתף