다음을 통해 공유


Visual Basic 6.0 사용자를 위한 데이터 형식 변경 사항

업데이트: 2007년 11월

Visual Basic 2008에서는 다른 프로그래밍 언어 및 공용 언어 런타임과 상호 운용되도록 데이터 형식이 업데이트되었습니다. 이러한 변경은 데이터 형식 선언, 사용법 및 변환에 영향을 줍니다.

Visual Basic 6.0

Visual Basic 6.0에서는 Deftype 문(DefBool, DefByte, DefCur, DefDate, DefDbl, DefDec, DefInt, DefLng, DefObj, DefSng, DefStr 및 DefVar)을 사용하여 변수의 기본 형식을 설정합니다.

통화가 포함된 계산이나 고정 소수점 계산에는 Currency 데이터 형식을 사용합니다.

Date는 8바이트를 사용하여 Double 형식으로 저장됩니다.

정수를 포함하는 두 개의 Variant 변수를 곱할 때 오버플로가 발생하는 경우 결과의 데이터 형식이 Double로 변경됩니다.

LSet 문과 RSet 문을 사용하여 한 사용자 정의 형식의 변수를 다른 사용자 정의 형식의 변수에 복사할 수 있습니다.

Visual Basic 2008

Visual Basic 2008에서는 Deftype 문이 지원되지 않습니다. Currency 데이터 형식도 지원되지 않습니다. 대신 모든 통화 변수 및 계산에서 소수점 양쪽의 자릿수를 더 많이 처리할 수 있는 새로운 Decimal 데이터 형식을 사용합니다. Decimal은 공용 언어 런타임에서 직접 지원되기도 합니다.

Visual Basic 2008에서 Date 데이터 형식은 8바이트 정수 값인 공용 언어 런타임 DateTime 데이터 형식을 사용합니다. 이러한 데이터 표현 방식의 차이로 인해 Visual Basic .NET에서는 Date 및 Double 데이터 형식 간에 암시적인 변환이 수행되지 않습니다. Double과 Visual Basic 6.0의 Date 표현 간에 변환을 수행하려면 System 네임스페이스에 있는 DateTime 구조체의 ToOADateFromOADate 메서드를 사용합니다.

Visual Basic .NET에서는 정수를 포함하는 두 개의 Object 변수를 곱하여 오버플로가 발생하면 결과가 64비트 Long 데이터 형식으로 변경됩니다.

LSet 및 RSet을 사용하여 특정 데이터 형식을 다른 데이터 형식에 지정할 수 없습니다. 이렇게 하면 특히 구조적으로 형식이 불안정한 작업이 발생하여 비안정형 코드가 생성될 수 있습니다.

참고 항목

개념

프로그래밍 요소 지원 변경 사항 요약

참조

Decimal 데이터 형식(Visual Basic)

Date 데이터 형식(Visual Basic)

DateTime

TimeSpan

Val 함수

형식 변환 함수

데이터 형식 요약(Visual Basic)

Double 데이터 형식(Visual Basic)

Long 데이터 형식(Visual Basic)