다음을 통해 공유


매개 변수 목록(Visual Basic)

프로시저가 호출할 때 예상되는 매개 변수를 지정합니다. 여러 매개 변수는 쉼표로 구분됩니다. 다음은 하나의 매개 변수에 대한 구문입니다.

문법

[ <attributelist> ] [ Optional ] [{ ByVal | ByRef }] [ ParamArray ]
parametername[( )] [ As parametertype ] [ = defaultvalue ]

부분

attributelist
선택 사항입니다. 이 매개 변수에 적용되는 특성 목록입니다. 특성 목록을 꺾쇠 괄호("" 및 "<>")로 묶어야 합니다.

Optional
선택 사항입니다. 프로시저를 호출할 때 이 매개 변수가 필요하지 않음을 지정합니다.

ByVal
선택 사항입니다. 프로시저가 호출 코드에서 해당 인수의 기초가 되는 변수 요소를 바꾸거나 다시 할당할 수 없게 지정합니다.

ByRef
선택 사항입니다. 프로시저가 호출 코드 자체와 동일한 방식으로 호출 코드의 기본 변수 요소를 수정할 수 있도록 지정합니다.

ParamArray
선택 사항입니다. 매개 변수 목록의 마지막 매개 변수가 지정된 데이터 형식 요소의 선택적 배열임을 지정합니다. 이렇게 하면 호출 코드가 임의의 수의 인수를 프로시저에 전달할 수 있습니다.

parametername
필수 사항입니다. 매개 변수를 나타내는 지역 변수의 이름입니다.

parametertype
Option StrictOn인 경우 필수입니다. 매개 변수를 나타내는 지역 변수의 데이터 형식입니다.

defaultvalue
매개 변수에 Optional 필요합니다. 매개 변수의 데이터 형식으로 계산되는 상수 또는 상수 식입니다. 형식 또는 Object클래스, 인터페이스, 배열 또는 구조체인 경우 기본값은 다음과 입니다 Nothing.

비고

매개 변수는 괄호로 묶고 쉼표로 구분됩니다. 매개 변수는 모든 데이터 형식으로 선언할 수 있습니다. 지정 parametertype하지 않으면 기본값은 .입니다 Object.

호출 코드는 프로시저를 호출할 때 각 필수 매개 변수에 인수 를 전달합니다. 자세한 내용은 매개 변수와 인수의 차이점을 참조하세요.

호출 코드가 각 매개 변수에 전달하는 인수는 호출 코드의 기본 요소에 대한 포인터입니다. 이 요소가 고정할 수 없는 경우(상수, 리터럴, 열거형 또는 식) 코드에서 변경할 수 없습니다. 변수 요소(선언된 변수, 필드, 속성, 배열 요소 또는 구조 요소)인 경우 호출 코드에서 이를 변경할 수 있습니다. 자세한 내용은 수정 가능한 인수와 수정할 수 없는 인수 간의 차이점을 참조하세요.

변수 요소가 전달되면 ByRef프로시저도 변경할 수 있습니다. 자세한 내용은 값으로 인수 전달과 참조로의 차이점을 참조하세요.

규칙

  • 괄호. 매개 변수 목록을 지정하는 경우 괄호로 묶어야 합니다. 매개 변수가 없는 경우에도 빈 목록을 둘러싸는 괄호를 사용할 수 있습니다. 이렇게 하면 요소가 프로시저임을 명확히 하여 코드의 가독성을 향상시킵니다.

  • 선택적 매개 변수입니다. 매개 변수에서 한정자를 사용하는 경우 목록의 Optional 모든 후속 매개 변수도 선택 사항이어야 하며 한정자를 사용하여 Optional 선언해야 합니다.

    모든 선택적 매개 변수 선언은 절을 defaultvalue 제공해야 합니다.

    자세한 내용은 선택적 매개 변수를 참조하세요.

  • 매개 변수 배열입니다. 매개 변수를 ParamArray 지정 ByVal 해야 합니다.

    동일한 매개 변수 목록에서 둘 다 OptionalParamArray 사용할 수 없습니다.

    자세한 내용은 매개 변수 배열을 참조하세요.

  • 전달 메커니즘. 모든 인수에 대한 기본 메커니즘은 ByVal프로시저가 기본 변수 요소를 변경할 수 없음을 의미합니다. 그러나 요소가 참조 형식인 경우 개체 자체를 바꾸거나 다시 할당할 수 없더라도 프로시저에서 기본 개체의 내용이나 멤버를 수정할 수 있습니다.

  • 매개 변수 이름입니다. 매개 변수의 데이터 형식이 배열인 경우 바로 뒤에 parametername 괄호가 옵니다. 매개 변수 이름에 대한 자세한 내용은 선언된 요소 이름을 참조하세요.

예시

다음 예제에서는 두 매개 변수를 정의하는 프로시저를 보여 Function 줍니다.

Public Function HowMany(ByVal ch As Char, ByVal st As String) As Integer
End Function
Dim howManyA As Integer = HowMany("a"c, "How many a's in this string?")

참고하십시오