Специальные символы в коде (Visual Basic)

Иногда в коде необходимо использовать специальные символы, то есть символы, которые не являются алфавитными или числовыми. Знаки препинания и специальные символы в наборе символов Visual Basic используют различные виды использования, от организации текста программы до определения задач, выполняемых компилятором или скомпилированной программой. Эти знаки не определяют операции, подлежащие выполнению.

Круглые скобки

При определении процедуры используйте круглые скобки, такие как или SubFunction. Необходимо заключить все списки аргументов процедуры в скобки. Вы также используете скобки для размещения переменных или аргументов в логические группы, особенно для переопределения порядка приоритета оператора по умолчанию в сложном выражении. Это показано в следующем примере.

Dim a, b, c, d, e As Double
a = 3.2
b = 7.6
c = 2
d = b + c / a
e = (b + c) / a

После выполнения предыдущего кода значение d равно 8.225, а значение e равно 3. Вычисление для d использования приоритета /+ по умолчанию и эквивалентно d = b + (c / a). Скобки в вычислении для e переопределения приоритета по умолчанию.

Разделители

Разделители делают то, что предполагает их имя: они разделяют разделы кода. В Visual Basic символ разделителя является двоеточием (:). Используйте разделители, если требуется включить несколько операторов в одну строку вместо отдельных строк. Это экономит пространство и улучшает удобочитаемость кода. В следующем примере показаны три оператора, разделенные двоеточиями.

a = 3.2 : b = 7.6 : c = 2

Дополнительные сведения см. в статье "Практическое руководство . Разрыв и объединение операторов в коде".

Символ двоеточия (:) также используется для идентификации метки инструкции. Дополнительные сведения см. в разделе "Практическое руководство. Инструкции меток".

Объединение

& Используйте оператор для объединения или связывания строк вместе. Не путайте его с оператором + , который добавляет вместе числовые значения. Если оператор используется + для объединения при работе с числовыми значениями, вы можете получить неверные результаты. Это продемонстрировано в следующем примере.

var1 = "10.01"
var2 = 11
resultA = var1 + var2
resultB = var1 & var2

После выполнения предыдущего кода значение resultA равно 21.01, а значение resultB равно "10.011".

Операторы доступа к членам

Чтобы получить доступ к члену типа, используйте оператор dot (.) или восклицательный знак (!) между именем типа и именем члена.

Dot (.) Оператор

. Используйте оператор класса, структуры, интерфейса или перечисления в качестве оператора доступа к члену. Элемент может быть полем, свойством, событием или методом. Это показано в следующем примере.

Dim nextForm As New System.Windows.Forms.Form
' Access Text member (property) of Form class (on nextForm object).
nextForm.Text = "This is the next form"
' Access Close member (method) on nextForm.
nextForm.Close()

Восклицательный знак (!) Оператор

! Используйте оператор только в классе или интерфейсе в качестве оператора доступа к словарю. Класс или интерфейс должны иметь свойство по умолчанию, которое принимает один String аргумент. Идентификатор сразу после оператора становится значением аргумента ! , переданным свойству по умолчанию в виде строки. Это продемонстрировано в следующем примере.

Public Class hasDefault
  Default Public ReadOnly Property index(ByVal s As String) As Integer
    Get
      Return 32768 + AscW(s)
    End Get
  End Property
End Class
Public Class testHasDefault
  Public Sub compareAccess()
    Dim hD As hasDefault = New hasDefault()
    MsgBox("Traditional access returns " & hD.index("X") & vbCrLf & 
      "Default property access returns " & hD("X") & vbCrLf & 
      "Dictionary access returns " & hD!X)
  End Sub
End Class

Три выходных MsgBox строки всех отображают значение 32856. Первая строка использует традиционный доступ к свойству index, второй использует тот факт, что index является свойством класса hasDefaultпо умолчанию, а третий использует доступ словаря к классу.

Обратите внимание, что второй операн ! оператора должен быть допустимым идентификатором Visual Basic, не включенным в двойные кавычки (" "). Другими словами, нельзя использовать строковый литерал или строковую переменную. Следующее изменение на последнюю строку MsgBox вызова создает ошибку, так как "X" это закрытый строковый литерал.

"Dictionary access returns " & hD!"X")

Примечание.

Ссылки на коллекции по умолчанию должны быть явными. В частности, оператор нельзя использовать ! в переменной с поздней привязкой.

Символ ! также используется в качестве символа Single типа.

См. также