Aracılığıyla paylaş


Açık ve örtük dönüştürmeler (Visual Basic)

Bir kapalý dönüþtürme kaynak kodunda özel bir sözdizimi gerekli değildir.Aşağıdaki örnekte, Visual Basic değerinin örtülü olarak dönüştürür k atamak için önce bir tek duyarlıklı kayan noktalı değere q.

Dim k As Integer
Dim q As Double
' Integer widens to Double, so you can do this with Option Strict On.
k = 432
q = k

Bir açýk dönüþtürme türü dönüştürme anahtar sözcüðünü kullanýr.Visual Basicanahtar ifade parantez içinde istenen veri türüne işlenemiyor birkaç tür sözcükler sağlar.Bu anahtar sözcükler işlevleri gibi davranacak, ancak yürütme bir işlev çağrısı ile biraz daha hızlıdır, bu nedenle kodu satır içi derleyici oluşturur.

Önceki örnekte, aşağıdaki uzantısına CInt anahtar sözcük değeri dönüştürür q atamak için önce bir tamsayıya geri k.

' q had been assigned the value 432 from k.
q = Math.Sqrt(q)
k = CInt(q)
' k now has the value 21 (rounded square root of 432).

Dönüştürme anahtar sözcükler

Kullanılabilir dönüştürme anahtar sözcükler aşağıdaki tabloda gösterilmiştir.

Tür dönüştürme anahtar sözcük

Bir ifade veri türüne dönüştürür

Dönüştürülecek ifade izin verilen veri türleri

CBool

Boolean veri türü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere Byte, SByteve türleri numaralandırılan), String,Object

CByte

Byte veri türü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere SByte ve türleri numaralandırılan), Boolean, String,Object

CChar

CHAR veri türü (Visual Basic)

String, Object

CDate

Tarih veri türü (Visual Basic)

String, Object

CDbl

Double veri türü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere Byte, SByteve türleri numaralandırılan), Boolean, String,Object

CDec

Ondalık veri türü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere Byte, SByteve türleri numaralandırılan), Boolean, String,Object

CInt

Tamsayı veri türü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere Byte, SByteve türleri numaralandırılan), Boolean, String,Object

CLng

Uzun veri türünü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere Byte, SByteve türleri numaralandırılan), Boolean, String,Object

CObj

Object veri türü

Her türlü

CSByte

SByte veri türü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere Byte ve türleri numaralandırılan), Boolean, String,Object

CShort

Kısa veri türü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere Byte, SByteve türleri numaralandırılan), Boolean, String,Object

CSng

Tek veri türü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere Byte, SByteve türleri numaralandırılan), Boolean, String,Object

CStr

String veri türü (Visual Basic)

Any numeric type (including Byte, SByte, and enumerated types), Boolean, Char, Char array, Date,Object

CType

Virgül aşağıdaki belirtilen türü (,)

Dönüştürme sırasında bir temel veri türü (bir birim türü bir dizi de dahil olmak üzere), aynı ilgili dönüştürme anahtar sözcük için izin verildiği gibi türleri

Dönüştürme sırasında bir Bileşik veri türü, bunu uygulayan arabirimleri ve devraldığı sınıfları

Bir sınıf veya yapı aşırı üzerinde dönüştürürken CType, o sınıf veya yapı

CUInt

UInteger veri türü

Herhangi bir sayısal tür (dahil olmak üzere Byte, SByteve türleri numaralandırılan), Boolean, String,Object

CULng

ULong veri türü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere Byte, SByteve türleri numaralandırılan), Boolean, String,Object

CUShort

UShort veri türü (Visual Basic)

Herhangi bir sayısal tür (dahil olmak üzere Byte, SByteve türleri numaralandırılan), Boolean, String,Object

CType işlevi

CType işlevi (Visual Basic) İki bağımsız çalışır.İlk ifade dönüştürülecek ve ikinci hedef veri türü veya nesne sınıfı.İlk bağımsız değişken bir ifade, bir tür olması gerektiğini unutmayın.

CTypeolan bir satır içi işlev, yani derlenmiş kod dönüştürme yapar, genellikle bir işlev oluşturmadan arayın.Bu, performansı artırır.

Bir karşılaştırma için CType diğer tür dönüştürme anahtar sözcükleriyle, bkz: DirectCast işleci (Visual Basic) ve TryCast işleci (Visual Basic).

kca3w8x6.collapse_all(tr-tr,VS.110).gifBirim türleri

Aşağıdaki örnek kullanımını gösterir CType.

k = CType(q, Integer)
' The following statement coerces w to the specific object class Label.
f = CType(w, Label)

kca3w8x6.collapse_all(tr-tr,VS.110).gifBileşik türleri

Kullanabileceğiniz CType bileşik veri türleri de birim türleri için farklı değerler dönüştürmek.Aşağıdaki örnekte olduğu gibi arabirimlerinden birinin türü için nesne sınıfı birleşim için de kullanabilirsiniz.

' Assume class cZone implements interface iZone.
Dim h As Object
' The first argument to CType must be an expression, not a type.
Dim cZ As cZone
' The following statement coerces a cZone object to its interface iZone.
h = CType(cZ, iZone)

kca3w8x6.collapse_all(tr-tr,VS.110).gifDizi türleri

CTypeAşağıdaki örnekte olduğu gibi array veri türleri de dönüştürebilirsiniz.

Dim v() As classV
Dim obArray() As Object
' Assume some object array has been assigned to obArray.
' Check for run-time type compatibility.
If TypeOf obArray Is classV()
    ' obArray can be converted to classV.
    v = CType(obArray, classV())
End If

Daha fazla bilgi ve bir örnek için, bkz. Dizi dönüşümleri (Visual Basic).

kca3w8x6.collapse_all(tr-tr,VS.110).gifCType tanımlama türleri

Tanımlayabileceğiniz CType bir sınıf veya yapı tanımladığınız.Bu değerleri için ve sınıf veya yapı türünü dönüştürmenize olanak sağlar.Daha fazla bilgi ve bir örnek için, bkz. Nasıl yapılır: bir Dönüþtürme iþleci (Visual Basic) tanımla.

[!NOT]

Bir hata oluşursa veya dönüştürme anahtar sözcüğü ile kullanılan değerleri hedef veri türü için geçerli olmalıdır.Örneğin dönüştürmeye çalışırsanız, bir Long için bir Integer, değeri Long için geçerli aralık içinde olmalıdır Integer veri türü.

Uyarı notuUyarı

Belirtme CType kaynak türü hedef türünden almıyor, bir sınıf türünden başka bir başarısız zamanında dönüştürmek için.Böyle bir hata oluşturduğunda bir InvalidCastException özel durum.

Ancak, türlerinden bir yapı ya da sınıf tanımladığınız ise ve tanımladığınız CType gereksinimlerini karşılamazsa, yapı veya sınıf, bir dönüştürme başarabilir, CType.Bkz: Nasıl yapılır: bir Dönüþtürme iþleci (Visual Basic) tanımla

Açık bir dönüştürme işlemi olarak da bilinen olan çevrim belirtilen veri türü veya nesne sınıfı için bir ifade.

Ayrıca bkz.

Görevler

Nasıl yapılır: bir nesneyi Visual Basic'te başka bir türe dönüştürmek

Veri türleri (Visual Basic) sorun giderme

Başvuru

Veri türü özeti (Visual Basic)

Tür dönüştürme işlevleri (Visual Basic)

Kavramlar

Dizeler ve diğer türleri (Visual Basic) arasında dönüştürme

Diğer Kaynaklar

Visual Basic'te Tür Dönüşümleri

Yapıları (Visual Basic)