Partager via


Modifications des types de données pour les utilisateurs de Visual Basic 6.0

Mise à jour : novembre 2007

Dans Visual Basic 2008, des mises à jour concernant les types de données ont été apportées en vue d'assurer l'interopérabilité avec d'autres langages de programmation et avec le Common Language Runtime. Les modifications sont liées à la déclaration, à l'utilisation et à la conversion des types de données.

Visual Basic 6.0

Dans Visual Basic 6.0, utilisez les instructions Deftype (DefBool, DefByte, DefCur, DefDate, DefDbl, DefDec, DefInt, DefLng, DefObj, DefSng, DefStr et DefVar) pour définir le type par défaut d'une variable.

Le type de données Currency vous permet d'effectuer des calculs impliquant de l'argent ainsi que des calculs en virgule fixe.

Une Date est stockée sous un format Double utilisant huit octets.

Si deux variables Variant contenant des entiers sont multipliées, un dépassement de capacité entraîne la conversion du type de données du résultat en Double.

Utilisez les instructions LSet et RSet pour copier une variable d'un certain type défini par l'utilisateur vers une autre variable d'un autre type défini par l'utilisateur.

Visual Basic 2008

Les instructions Deftype ne sont pas prises en charge dans Visual Basic 2008. Le type de données Currency n'est pas pris en charge non plus. Pour tous les calculs et variables monétaires, utilisez plutôt le nouveau type de données Decimal, capable de gérer un nombre supérieur de chiffres de part et d'autre de la virgule décimale. Decimal est également directement pris en charge par le Common Language Runtime.

Dans Visual Basic 2008, le type de données Date utilise le type de données DateTime du Common Language Runtime, qui est une valeur entière codée sur huit octets. En raison de ces représentations différentes, il ne peut y avoir de conversion implicite entre les types de données Date et Double. Pour passer de Double à la représentation Visual Basic 6.0 de Date, utilisez les méthodes ToOADate et FromOADate de la structure DateTime dans l'espace de noms System.

Si la multiplication de deux variables Object contenant des entiers aboutit à un dépassement de capacité, le résultat est converti dans le type de données à 64 bits Long.

Vous ne pouvez pas employer LSet et RSet pour assigner un type de données à un autre. Cela implique une opération de type risquée (particulièrement avec les structures) qui pourrait engendrer du code non vérifiable.

Voir aussi

Concepts

Récapitulatif des modifications relatives à la prise en charge des éléments de programmation

Référence

Decimal, type de données (Visual Basic)

Type de données date (Visual Basic)

DateTime

TimeSpan

Val, fonction

Fonctions de conversion de types de données

Liste des types de données (Visual Basic)

Double, type de données (Visual Basic)

Long, type de données (Visual Basic)