다음을 통해 공유


코드의 특수 문자(Visual Basic)

경우에 따라 코드에서 특수 문자, 즉 사전순 또는 숫자가 아닌 문자를 사용해야 합니다. Visual Basic 문자 집합의 문장 부호 및 특수 문자는 프로그램 텍스트 구성부터 컴파일러 또는 컴파일된 프로그램에서 수행하는 작업 정의에 이르기까지 다양한 용도로 사용됩니다. 수행할 작업을 지정하지 않습니다.

괄호

프로시저(예: a 또는 Sub.)를 정의할 때 괄호를 Function 사용합니다. 모든 프로시저 인수 목록을 괄호로 묶어야 합니다. 변수 또는 인수를 논리 그룹에 배치하는 데 괄호를 사용하여 특히 복잡한 식에서 연산자 우선 순위의 기본 순서를 재정의합니다. 다음 예제에서는 이를 보여 줍니다.

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.0111"입니다.

멤버 접근 연산자

형식의 멤버에 액세스하려면 형식 이름과 멤버 이름 사이에 점(.) 또는 느낌표(!) 연산자를 사용합니다.

점(.) 연산자

. 클래스, 구조체, 인터페이스 또는 열거형의 연산자를 멤버 액세스 연산자로 사용합니다. 멤버는 필드, 속성, 이벤트 또는 메서드일 수 있습니다. 다음 예제에서는 이를 보여 줍니다.

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 유형 문자로도 사용됩니다.

참고하십시오