変換時の値の変化 (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 での型宣言を省略したプログラミング