CType — Funkcja (Visual Basic)
Zwraca wynik wyraźnie konwertującego wyrażenia do określonego typu danych, obiektu, struktury, klasy lub interfejsu.
CType(expression, typename)
Części
expression
Dowolne prawidłowe wyrażenie.Jeśli wartość expression znajduje się poza zakresem dozwolonym przez typename, Visual Basic zgłasza wyjątek.typename
Dowolne wyrażenie, które jest dozwolony w As w klauzuli Dim instrukcji, czyli jest nazwą dowolnego typu danych, obiektu, struktury, klasy lub interfejsu.
Uwagi
![]() |
---|
Można również użyć następujących funkcji, aby przeprowadzić konwersję typu:
|
CType jest skompilowany w tekście, co oznacza, że kod konwersji jest częścią kodu, którego wynikiem jest wyrażenie.W niektórych przypadkach kod działa szybciej ponieważ procedury nie są wywoływane w celu wykonania konwersji.
Jeśli konwersja nie jest zdefiniowana z expression do typename (na przykład z Integer do Date), Visual Basic wyświetli komunikat o błędzie kompilacji.
Jeśli konwersja nie powiedzie się w czasie wykonywania, zostanie zgłoszony odpowiedni wyjątek.Jeśli zawężenie konwersji nie powiedzie się, najczęstszym rezultatem jest OverflowException.Jeśli konwersja jest niezdefiniowana, zostanie zgłoszone InvalidCastException.Na przykład może się to zdarzyć, jeśli expression jest typu Object, a jego typ działania nie ma konwersji do typename.
Jeśli typem danych expression lub typename jest zdefiniowana przez Ciebie klasa lub struktura, możesz zdefiniować CType dla tej klasy lub struktury jako operatora konwersji.Sprawia to, że CType funkcjonuje jako operator przeciążenia.Jeśli to zrobisz, możesz kontrolować zachowanie podczas konwersji do/od klasy lub struktury, łącznie z wyjątkami, które mogą być generowane.
Przeciążenie
Operator CType może również być przeciążony na klasę lub strukturę zdefiniowaną poza kodem.Jeśli Twój kod konwertuje do lub z takiej klasy lub struktury, należy zrozumieć zachowanie jego operatora CType.Aby uzyskać więcej informacji, zobacz Procedury operatorów (Visual Basic).
Konwertowanie obiektów dynamicznych
Konwersje typów obiektów dynamicznych są wykonywane przez zdefiniowane przez użytkownika dynamiczne konwersje, które używają metod TryConvert lub BindConvert.Podczas pracy z obiektami dynamicznymi, użyj metodę CTypeDynamic, aby przekonwertować obiekt dynamiczny.
Przykład
W poniższym przykładzie użyto funkcji CType do skonwertowania wyrażenia na typ danych Single.
Dim testNumber As Long = 1000
' The following line of code sets testNewType to 1000.0.
Dim testNewType As Single = CType(testNumber, Single)
Aby uzyskać więcej przykładów, zobacz Konwersje jawne i niejawne (Visual Basic).
Zobacz też
Zadania
Porady: definiowanie operatora konwersji (Visual Basic)
Informacje
Funkcje konwersji typu (Visual Basic)
Funkcje konwersji (Visual Basic)