다음을 통해 공유


업그레이드 권장 사항: 사용자 정의 형식에 배열과 고정 길이 문자열 사용 안 함

업데이트: 2007년 11월

Visual Basic 2008 배열 및 구조체(이전의 사용자 정의 형식)는 다른 Visual Studio 언어와 완벽하게 호환되도록 변경되었기 때문에 고정 길이 문자열은 언어에서 더 이상 지원되지 않습니다. 대부분의 경우 고정 길이 문자열 동작을 제공하는 호환 클래스가 있기 때문에 문제가 되지 않습니다. 따라서 다음 코드는

Dim FixedLengthString As String * 100

다음과 같이 업그레이드됩니다.

Dim FixedLengthString As New VB6.FixedLengthString(100)

그러나 고정 길이 문자열을 구조체에서 사용하면 문제가 발생합니다. 이러한 문제는 구조체를 만들 때 고정 길이 문자열 클래스가 자동으로 생성되지 않기 때문에 발생합니다. 마찬가지로 고정 길이 배열도 구조체를 만들 때 자동으로 생성되지 않습니다.

코드를 업그레이드하면 고정 길이 문자열을 가진 사용자 정의 형식은 구조체로 변환되고 코드에서 구조체를 참조하기 전에 고정 길이 문자열이나 배열을 초기화했음을 알려 주는 주석이 표시됩니다. 그러나 고정 길이 문자열 대신 문자열을 사용하고 고정 길이 배열 대신 초기화되지 않은 배열을 사용하도록 Visual Basic 6.0 사용자 정의 형식을 변경하면 이러한 수정을 하지 않아도 됩니다. 예를 들면 다음과 같습니다.

Private Type uType
    anArray(5) As Integer
    aFixedString As String * 100
End Type
Sub SomeFunction()
    Dim aVariable As uType
End Sub

다음과 같이 변경할 수 있습니다.

Private Type uType
    anArray() As Integer
    aFixedString As String
End Type
Sub SomeFunction()
    Dim aVariable As uType
    ReDim aVariable.anArray(5) As Integer
    aVariable.aFixedString = String$(100, " ")
End Sub

참고 항목

기타 리소스

업그레이드를 위한 언어 권장 사항