Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dies ist die vollständige Auflistung des Quellcodes für die Beispielzeichenfolgenkomponente in Visual Basic:
Auflistung 1. Komponente in Visual Basic (CompVB.vb)
Option Explicit
Option Strict
Imports System
Namespace CompVB
Public Class StringComponent
Private StringSet(3) As String
Public Sub New()
MyBase.New
StringSet(0) = "Visual Basic String 0"
StringSet(1) = "Visual Basic String 1"
StringSet(2) = "Visual Basic String 2"
StringSet(3) = "Visual Basic String 3"
End Sub
Public Function GetString(ByVal index as Integer)
As String
If ((index < 0) or (index >= Count)) then
throw new IndexOutOfRangeException
End If
GetString = StringSet(index)
End Function
ReadOnly Property Count() As Long
Get
Count = StringSet.Length
End Get
End Property
End Class
End Namespace
Wie in Managed Extensions for C++ und Visual C# werden sowohl der Namespace als auch der Klassenname in Code angegeben.
Mit diesem Code wird auch die neue Option Strict-Anweisung eingeführt, die steuert, ob Variablentypkonvertierungen implizit oder explizit sind. Implizite Konvertierungen können ohne besondere Syntax ausgeführt werden. Explizite Konvertierungen müssen hingegen unter Verwendung der Umwandlungsoperatoren ausgeführt werden. Wenn diese Option aktiviert wird, können nur erweiternde Konvertierungen (z. B. von Integer in Double) implizit ausgeführt werden. Die Option Strict-Funktionalität kann ebenfalls während der Kompilierung aktiviert werden, indem der Compilerschalter /optionstrict+ verwendet wird.
In Visual Basic wird einem Konstruktor der Name New, und nicht wie in anderen Sprachen der Name der Klasse zugewiesen. Da ein Konstruktor keinen Wert zurückgibt, wird er in Visual Basic als Sub und nicht als Function implementiert:
Public Sub New()
...
End Sub
Betrachten wir die folgende Anweisung:
MyBase.New
Diese Anweisung, die obligatorisch ist, ruft den Basisklassenkonstruktor auf. In Visual C# und Managed Extensions for C++ wird der Aufruf des Basisklassenkonstruktors automatisch durch den Compiler erzeugt.
Im Folgenden ist die GetString-Methode dargestellt, die eine Ganzzahl annimmt und eine Zeichenfolge zurückgibt. (In Visual Basic wird eine Unterroutine, die einen Wert zurückgibt, als Funktion bezeichnet.)
Public Function GetString(ByVal index as Integer)
As String
If ((index < 0) or (index >= Count)) then
throw new IndexOutOfRangeException
End If
GetString = StringSet(index)
End Function
Die throw-Anweisung in der GetString-Methode kennzeichnet die neue laufzeitbasierte Ausnahmebehandlung:
throw new IndexOutOfRangeException
Diese Anweisung erstellt ein neues Objekt des Typs IndexOutOfRangeException (und löst es aus).
**Hinweis **In vorherigen Versionen der Visual Basic-Laufzeit wurde Err implementiert.
Abschließend erstellen Sie die schreibgeschützte Count-Eigenschaft:
ReadOnly Property Count() As Long
Get
Count = StringSet.Length
End Get
End Property
Das Erstellen über die Befehlszeile ist verhältnismäßig einfach. Die einzige vorzunehmende Änderung ist das Schreiben der Komponente in das entsprechende ..\Bin-Unterverzeichnis (siehe unten):
vbc.exe /t:library /debug+ /optionstrict+ /out:..\bin\CompVB.dll CompVB.vb
Siehe auch
Clients für die einfachen Komponenten | Zusammenfassung des Lernprogramms für Entwicklung | Anhang A: Tools zum Durchsuchen von Namespaces