The_Unknown_Member Ответов: 1

C# что значит "? "символ делает, когда он помещается после универсального параметра


C# что делает символ"?", когда он помещается после универсального параметра

Я наткнулся на этот код:
public static Task<long?> GetPageLength() 
{
   // Code 
   ...
}


Что я уже пробовал:

Погуглил, но никакой информации не нашел.

1 Ответов

Рейтинг:
5

OriginalGriff

Вопросительный знак указывает на то, что это не long уже нет, но есть nullable long.
Как вы знаете, long переменные-это типы значений, а типы значений не могут содержать null - таким образом, вы можете использовать знак вопроса для создания специальной версии типа значения, который также может содержать null: Nullable Types (Руководство По Программированию На C#) | Microsoft Docs[^]