Оператор NameOf — Visual Basic
Оператор NameOf
получает имя, тип или член переменной в качестве строковой константы:
Console.WriteLine(NameOf(System.Collections.Generic)) ' output: Generic
Console.WriteLine(NameOf(List(Of Integer))) ' output: List
Console.WriteLine(NameOf(List(Of Integer).Count)) ' output: Count
Console.WriteLine(NameOf(List(Of Integer).Add)) ' output: Add
Dim numbers As New List(Of Integer) From { 1, 2, 3 }
Console.WriteLine(NameOf(numbers)) ' output: numbers
Console.WriteLine(NameOf(numbers.Count)) ' output: Count
Console.WriteLine(NameOf(numbers.Add)) ' output: Add
Как показано в предыдущем примере, при использовании типа и пространства имен созданное имя обычно не является полным.
Оператор NameOf
вычисляется во время компиляции и это не влияет на время выполнения.
С помощью оператора NameOf
можно сделать код проверки аргументов более удобным:
Private _name As String
Public Property Name As String
Get
Return _name
End Get
Set
If value Is Nothing Then
Throw New ArgumentNullException(NameOf(value), $"{NameOf(name)} cannot be null.")
End If
End Set
End Property
Оператор NameOf
доступен в Visual Basic 14 и более поздних версиях.
См. также
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.