Подтвердить что ты не робот

Почему существует вопросник по определению частной переменной?

Я читаю статью о шаблоне MVVP и как ее реализовать с помощью WPF. В исходном коде есть несколько строк, где я не могу понять, что означают в нем знаки вопроса.

private DateTime? _value;

Что означает ? в определении? Я попытался найти его в помощи VS, но не смог.

4b9b3361

Ответ 1

Это значение с нулевым значением. Структуры по умолчанию не могут быть нулевыми, они должны иметь значение, поэтому в С# 2.0 тип Nullable<T> был введен в .NET Framework.

С# реализует тип Nullable<T> с помощью куска синтаксического сахара, который помещает знак вопроса после имени типа, тем самым делая ранее непустой тип, нулевым.

Ответ 2

Это означает, что тип Nullable.

Ответ 3

не может быть null

DateTime                        
DateTime dt = null;   // Error: Cannot convert null to 'System.DateTime'
                         because it is a  non-nullable value type 

может быть нулевым

DateTime? / Nullable<DateTime>  
DateTime? dt = null;  // no problems

Ответ 4

Это тип с нулевым значением, вы можете присвоить ему нуль

Ответ 5

Частная дата-время? _value - означает, что значение _ является нулевым. посмотрите эту ссылку для лучшего объяснения.

http://davidhayden.com/blog/dave/archive/2005/05/23/1047.aspx

Надеюсь, что это поможет.

Спасибо, Радж

Ответ 6

Это означает, что поле является Nullable<DateTime>, то есть a DateTime, которое может быть null