NotNull
NotNull на out-параметре
означает: после нормального возврата
значение не null. Метод
записывает "abcde" в out.
Файл с #nullable enable.
Синтаксис
static void Read([NotNull] out string? value)
{
value = "abcde";
}
Пример
Давайте прочитать значение из out:
#nullable enable
using System;
using System.Diagnostics.CodeAnalysis;
class Program
{
static void Read([NotNull] out string? value)
{
value = "abcde";
}
static void Main()
{
Read(out string? res);
Console.WriteLine(res);
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте проверить, что значение не null:
#nullable enable
using System;
using System.Diagnostics.CodeAnalysis;
class Program
{
static void Read([NotNull] out string? value)
{
value = "abcde";
}
static void Main()
{
Read(out string? res);
bool isNull = res == null;
Console.WriteLine(isNull);
}
}
Результат выполнения кода:
False
Пример
Давайте проверить длину строки:
#nullable enable
using System;
using System.Diagnostics.CodeAnalysis;
class Program
{
static void Read([NotNull] out string? value)
{
value = "abcde";
}
static void Main()
{
Read(out string? res);
int len = res.Length;
Console.WriteLine(len);
}
}
Результат выполнения кода:
5
Смотрите также
-
MaybeNull,
может быть null -
NotNullWhen,
не null при условии -
MaybeNullWhen,
null при условии -
RequiredMember,
обязательный член