変換時の値の変化 (Visual Basic)

値型からの変換では、変換元の値のコピーが変換先に格納されます。 ただし、このコピーは変換元の値の正確なイメージではありません。 変換先のデータ型では値の格納方法が異なり、実行される変換の種類によっては、表現される値も変化する場合があります。

拡大変換と縮小変換での変化

縮小変換では、変換先にコピーされた値は変化し、場合によっては変換元に含まれていた情報が失われます。 たとえば、小数値は整数型に変換されると丸められ、数値型は Boolean に変換されると True または False のいずれかになります。

拡大変換では、元の値は保持されますが、その表現は変化する場合があります。 表現が変化するのは、整数型から 10 進型 (Decimal)、または Char 型 (Char) から文字列型 (String) に変換する場合です。

最初の変換元の値が変換の結果変化することはありません。

参照型変換での変化

参照型からの変換では、値へのポインターだけがコピーされます。 値自体のコピーや変更は行われません。 変化する可能性があるのは、ポインターを保持する変数のデータ型だけです。 次の例では、データ型が派生クラスから基本クラスに変換されますが、両方の変数が指すことになるオブジェクトは変化しません。

' Assume class cSquare inherits from class cShape.
Dim shape As cShape
Dim square As cSquare = New cSquare
' The following statement performs a widening
' conversion from a derived class to its base class.
shape = square

参照

処理手順

方法: Visual Basic でオブジェクトを別の型に変換する

参照

データ型の概要 (Visual Basic)

データ型変換関数 (Visual Basic)

概念

拡大変換と縮小変換 (Visual Basic)

暗黙の型変換と明示的な型変換 (Visual Basic)

文字列とその他の型との変換 (Visual Basic)

配列の変換 (Visual Basic)

Visual Basic での型宣言を省略したプログラミング

その他の技術情報

Visual Basic における型変換

構造体 (Visual Basic)