Option Explicit und Option Strict in Visual Basic .NET und Visual Basic

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 311329 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel beschreibt zwei Option -Anweisungen:
  • "Option Strict"
  • Option Explicit
Option Strict ist in Microsoft Visual Basic .NET, Microsoft Visual Basic 2005 und höheren Versionen von Visual Basic, neu. Option Explicit ist in früheren Versionen von Visual Basic verfügbar.

Weitere Informationen

Die Option Explicit-Anweisung

Standardmäßig erzwingt der Visual Basic .NET oder Visual Basic-Compiler explizite Variablendeklaration, die erfordert, dass Sie jede Variable, deklarieren bevor Sie es verwenden. Informationen zum Ändern dieses Standardverhaltens finden Sie unter das Change the Default Project Values Abschnitt.

Die Option Strict-Anweisung

Standardmäßig erzwingt die Visual Basic .NET oder Visual Basic-Compiler nicht strikte Daten eingeben. Informationen zum Ändern dieses Standardverhaltens finden Sie unter das Change the Default Project Values Abschnitt.

Option Strict schränkt implizite Datentypkonvertierungen auf Erweiterungskonvertierungen nur. Erweiterungskonvertierungen lässt alle Datentypkonvertierungen in welcher Datenverlust auftreten kann, sowie Konvertierungen zwischen numerischen Typen und Zeichenfolgen explizit nicht. Weitere Informationen über Erweiterungskonvertierungen finden Sie unter Widening Conversions Abschnitt.

Wenn Sie die Option Strict -Anweisung verwenden, muss die-Anweisung vor anderem Code verwendet werden. In Visual Basic .NET können Sie in der Regel einen beliebigen Datentyp in jedem anderen Datentyp implizit konvertieren. Datenverlust kann auftreten, wenn der Wert eines Datentyps in einen Datentyp mit geringerer Genauigkeit oder kleinerer Kapazität konvertiert wird. Allerdings erhalten Sie eine run-time Fehlermeldung, wenn Daten in eine solche Konvertierung verloren. Option Strict benachrichtigt Sie diese Art von Konvertierungen zur Kompilierzeit, damit Sie vermeiden können.

Option Strict generiert auch eine Fehlermeldung in den folgenden Szenarien:
  • Für alle nicht deklarierten Variablen. Dies ist, da Option Strict auch Option Explicit impliziert.
  • Späte Bindung.

Erweiterungskonvertierungen

Die folgenden Tabelle sind den Standard Erweiterungskonvertierungen aufgelistet.

Tabelle minimierenTabelle vergrößern
TypErweiterung in Datentypen
Byte Byte , short , Integer , Long , Decimal , Single , Double
kurze short , Integer , Long , Decimal , Single , Double
ganze Zahl Integer , Long , Decimal , Single , Double
lange long , Decimal , Single , Double
Dezimalzahl decimal , Single , Double
einzelne einzelne Double
doppelte doppelte
Einem beliebigen EnumerationstypDer zugrunde liegende ganzzahlige Typ und jeder Typ, den es erweitert wird
char char , String
Beliebiger Typ Objekt , eine Schnittstelle, die es implementiert
Alle abgeleiteten TypBeliebiger Basistyp, der von dem er abgeleitet ist
NichtsJeder Datentyp oder Objekttyp

Die folgenden Konvertierungen verloren Genauigkeit:
  • Integer in Single
  • long in Single oder Double
  • decimal , Single oder Double
Diese Konvertierungen verlieren jedoch nicht Informationen oder Größenordnung.

Erweiternde Konvertierungen immer erfolgreich, und Sie immer erweiternde Konvertierungen implizit ausführen können.

Explizite Konvertierung mit Umwandlung

Bei einer expliziten Umwandlung wird ein Typkonvertierungs-Schlüsselwort verwendet. Visual Basic .NET oder Visual Basic 2005 enthält mehrere solcher Schlüsselwörter, die einen Ausdruck in Klammern in den Datentyp zu erzwingen, die Sie möchten. Diese Schlüsselwörter Verhalten sich wie Funktionen, aber der Compiler generiert den Code Inline. Daher ist die Ausführung etwas schneller mit expliziten Konvertierung ist als bei einem Funktionsaufruf.

In der folgende Tabelle sind die verfügbaren Konvertierungsschlüsselwörter aufgeführt.
Tabelle minimierenTabelle vergrößern
Typ Konvertierung SchlüsselwortAusdruck konvertiert
zu Datentyp
Zulässige Datentypen von Expression konvertiert
CBool Boolean Ein beliebiger numerischer Typ (einschließlich Byte und aufgelisteter Typen), String , Object
CByte Byte Beliebiger numerischer Typ aufgezählt einen Typ, Boolean , String , Object
CChar char Zeichenfolge , Objekt
CDate Datum Zeichenfolge , Objekt
CDbl doppelte Ein beliebiger numerischer Typ (einschließlich Byte und aufgelisteter Typen), Boolean , String , Object
CDec Dezimalzahl Ein beliebiger numerischer Typ (einschließlich Byte und aufgelisteter Typen), Boolean , String , Object
CInt ganze Zahl Ein beliebiger numerischer Typ (einschließlich Byte und aufgelisteter Typen), Boolean , String , Object
CLng lange Ein beliebiger numerischer Typ (einschließlich Byte und aufgelisteter Typen), Boolean , String , Object
CObj Objekt Beliebiger Typ
CShort kurze Ein beliebiger numerischer Typ (einschließlich Byte und aufgelisteter Typen), Boolean , String , Object
CSng einzelne Ein beliebiger numerischer Typ (einschließlich Byte und aufgelisteter Typen), Boolean , String , Object
CStr Zeichenfolge Beliebiger numerischer Typ (einschließlich Byte ), Boolean , char , char-Array , Date , Object
CType Der angegebene Typ folgende Komma ()Wenn Sie in einen elementaren Typ (einschließlich ein Array eines elementaren Typs) dieselben Typen konvertieren wie für das entsprechende Konvertierungsschlüsselwort zulässig sind.

Wenn Sie einen zusammengesetzten Typ die implementierten Schnittstellen und die Klassen, von denen geerbt, konvertieren.

Ändern der Standardwerte für Projekt

Sie können die Standardwerte der Option Explicit und Option Strict ändern. Z. B. Wenn Sie eine neue Anwendung mit Visual Basic .NET erstellen, wird Visual Basic 2005 oder Visual Basic 2008, der Wert für Option Explicit auf On festgelegt. Sie können diesen Standardwert ändern, auf aus .

Um die Standardwerte der Option Explicit und Option Strict in Visual Basic .NET ändern, klicken Sie um das Optionen-Dialogfeld Öffnen im Menü Extras auf Optionen . Ändern Sie dann die Standardwerte für Option Explicit und Option Strict in der Projekte und Projektmappen im Abschnitt zu VB-Standard .

Um die Standardwerte der Option Explicit und Option Strict in Visual Studio ändern, klicken Sie um das Optionen-Dialogfeld Öffnen im Menü Extras auf Optionen . Ändern Sie dann die Standardwerte für Option Explicit und Option Strict in der Projekte und Projektmappen im Abschnitt zu VB-Standard .

Eigenschaften

Artikel-ID: 311329 - Geändert am: Mittwoch, 19. März 2008 - Version: 4.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Visual Studio 2008 Academic Edition
  • Microsoft Visual Studio 2008 Professional Edition
  • Microsoft Visual Studio 2008 Standard Edition
  • Microsoft Visual Studio 2008 Team Edition for Database Professionals
  • Microsoft Visual Studio 2008 Team Edition for Software Architects
  • Microsoft Visual Studio 2008 Team Edition for Software Developers
  • Microsoft Visual Studio 2008 Team Edition for Software Testers
  • Microsoft Visual Studio 2008 Team Foundation Server
  • Microsoft Visual Studio 2008 Team Suite
  • Microsoft Visual Studio 2008 Team System Test Load Agent
  • Microsoft Visual Basic 2005 Express Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Keywords: 
kbmt kbvs2005swept kbvs2005applies kbvs2002sp1sweep kbbug kbcompiler kbdebug kbideproject kbinfo kbupgrade KB311329 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 311329
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com