Когда нулева не является нулевым?C#

Место общения программистов C#
Anonymous
Когда нулева не является нулевым?

Сообщение Anonymous »

Я пытаюсь понять поведение по умолчанию getValueordefault (). Если у меня есть нулевое свойство, должно getValueordefault () вернуть базовое значение по умолчанию или создательное значение NULL ... Поскольку это созданное значение (NULL) было бы значением, поэтому нам не нужно получать значение «по умолчанию». < /P>
Например: < /p>

Код: Выделить всё

namespace Nullable_test
{
public class AutoPropNullTest
{
public int? AutoValue { get; set; }
}

public class ManualPropNullTest
{

private int? i;

public int? ManualValue
{
get
{
return i;
}

set
{
i = value;
}
}
}
}
< /code>
Выше будет создано с нулевыми значениями, но вызов valueordefault вернет ноль. < /p>
        ManualPropNullTest x = new ManualPropNullTest();

AutoPropNullTest y = new AutoPropNullTest();

//x & y will inspect as null

int? q = x.ManualValue.GetValueOrDefault();

//q will result in zero
Я понимаю, что это вопрос типа разделения>

Подробнее здесь: https://stackoverflow.com/questions/298 ... a-nullable

Вернуться в «C#»