Sdílet prostřednictvím


CType – funkce (Visual Basic)

Vrátí výsledek explicitně převedeného výrazu na zadaný datový typ, objekt, strukturu, třídu nebo rozhraní.

CType(expression, typename)

Části

  • expression
    Libovolný platný výraz.Pokud hodnota expression je mimo povolený rozsah povolený typename, Visual Basic vyvolá výjimku.

  • typename
    Libovolný výraz, který je platný v rámci klauzule As v příkazu Dim, tedy název libovolného datového typu, objektu, struktury, třídy nebo rozhraní.

Poznámky

Tip

Tyto funkce můžete také použít k provedení převodu typu:

CType je zkompilovaný vloženě, což znamená, že kód převodu je součástí kódu, který vyhodnotí výraz.V některých případech kód běží rychleji, protože nejsou volány žádné procedury k provedení převodu.

Není-li definován žádný převod z expression na typename (např. z Integer na Date), Visual Basic zobrazí zprávu Chyba kompilace.

Pokud převod selže v době spuštění, je vyvolána vhodná výjimka.Pokud selže zužující převod, OverflowException je nejčastěji výsledkem.Pokud převod není definován, InvalidCastException je vyvolána.Například to může nastat, když je expression typu Object a jeho typ za běhu nemá převod do typu typename.

Pokud datový typ expression nebo typename je třída nebo struktura, kterou jste definovali, můžete definovat CType pro danou třídu nebo strukturu jako operátor převodu.Díky tomu se CType chová jako přetížený operátor.Provedete-li to, můžete řídit chování převodu do a z třídy nebo struktury, včetně výjimek, které mohou být vyvolány.

Přetěžování

Operátora CType lze také přetížit ve třídě nebo struktuře definované mimo váš kód.Pokud váš kód převede do nebo z takové třídy nebo struktury, ujistěte se, že chápete chování jejího operátoru CType.Další informace naleznete v tématu Procedury operátoru (Visual Basic).

Převod dynamických objektů

Konverze typů dynamických objektů jsou vykonávány uživatelem definovanými dynamickými konverzemi pomocí metod TryConvert nebo BindConvert.Pokud pracujete s dynamickými objekty, použijte metodu CTypeDynamic pro převod dynamického objektu.

Příklad

V následujícím příkladu se používá funkce CType k převodu výrazu na datový typ Single.

Dim testNumber As Long = 1000
' The following line of code sets testNewType to 1000.0. 
Dim testNewType As Single = CType(testNumber, Single)

Další příklady naleznete v tématu Implicitní a explicitní převody (Visual Basic).

Viz také

Úkoly

Postupy: Definice operátora převodu (Visual Basic)

Referenční dokumentace

Funkce pro převod typů (Visual Basic)

Funkce konverze (Visual Basic)

OverflowException

InvalidCastException

Operator – příkaz

Koncepty

Převod typů v rozhraní .NET Framework