The Option and Imports Statements in VB .NET
By: Steven Holzner in VB.net Tutorials on 2008-11-25
Two additional statements that are very important to know about when constructing programs are the Option and Imports statements. The Option statement sets a number of options for the rest of your code, and the Imports statement imports namespaces into your code, making them more readily available.
Option Statements
You use Option statements to set the "ground rules" for your code, helping prevent syntax and logic errors. Here are the possibilities:
-
Option Explicit- Set to On or Off. On is the default. Requires declaration of all variables before they are used (this is the default).
-
Option Compare- Set to Binary or Text. This specifies if strings are compared using binary or text comparison operations.
-
Option Strict- Set to On or Off. Off is the default. When you assign a value of one type to a variable of another type Visual Basic will consider that an error if this option is on and there is any possibility of data loss, as when you're trying to assign the value in a variable to a variable of less precise data storage capacity. In that case, you must use explicit conversion functions, like CLng.
You use Option statements first thing in code, like this one in which I'm turning Option Strict off:
Option Strict Off
Module Module1
Sub Main()
System.Console.WriteLine("Hello from Visual Basic")
End Sub
End Module
Imports Statements
You use Imports statements to import a namespace so you don't have to qualify items in that namespace by listing the entire namespace when you refer to them. For example, here's what our code might look like; the WriteLine procedure is built into the System.Console namespace, so it is a method of that namespace, and to use it, I qualify its name with the namespace it belongs to:
Option Strict Off Module Module1 Sub Main() System.Console.WriteLine("Hello from Visual Basic") End Sub End Module
On the other hand, if we import the System.Console namespace, that makes that namespace immediately available, so we don't have to qualify the WriteLine method name anymore (note that Option statements, if there are any, must still come first):
Option Strict Off Imports System.Console Module Module1 Sub Main() WriteLine("Hello from Visual Basic") End Sub End Module
Tip |
Each project has its own root namespace, and by default, Visual Basic uses the name of the project for the root namespace. If you prefer, you can set another namespace-just right-click the project in the Solutions Explorer, select the Properties menu item, open the Common Properties folder, select the General item, and enter the new namespace name in the Root Namespace box. |
Add Comment
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
- Your name, rating, website address, town, country, state and comment will be publicly displayed if entered.
- Aside from the data entered into these form fields, other stored data about your comment will include:
- Your IP address (not displayed)
- The time/date of your submission (displayed)
- Your email address will not be shared. It is collected for only two reasons:
- Administrative purposes, should a need to contact you arise.
- To inform you of new comments, should you subscribe to receive notifications.
- A cookie may be set on your computer. This is used to remember your inputs. It will expire by itself.
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
- Although the administrator will attempt to moderate comments, it is impossible for every comment to have been moderated at any given time.
- You acknowledge that all comments express the views and opinions of the original author and not those of the administrator.
- You agree not to post any material which is knowingly false, obscene, hateful, threatening, harassing or invasive of a person's privacy.
- The administrator has the right to edit, move or remove any comment for any reason and without notice.
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
- Data Science
- Android
- React Native
- AJAX
- ASP.net
- C
- C++
- C#
- Cocoa
- Cloud Computing
- HTML5
- Java
- Javascript
- JSF
- JSP
- J2ME
- Java Beans
- EJB
- JDBC
- Linux
- Mac OS X
- iPhone
- MySQL
- Office 365
- Perl
- PHP
- Python
- Ruby
- VB.net
- Hibernate
- Struts
- SAP
- Trends
- Tech Reviews
- WebServices
- XML
- Certification
- Interview
categories
Related Tutorials
Changes in Controls from VB6 to VB.net
Unstructured Exception Handling in VB.net
Structured Exception Handling in VB.net
Creating Sub Procedures in VB.net
Passing a Variable Number of Arguments to Procedures in VB.net
Specifying Optional Arguments with default values in Procedures in VB.net
Preserving a Variable's Values between Procedure Calls in VB.net
Throwing an Exception in VB.net
Comments