Wrox Programmer Forums
ASP.NET 2.0 Basics If you are new to ASP or ASP.NET programming with version 2.0, this is the forum to begin asking questions. Please also see the Visual Web Developer 2005 forum.
Welcome to the p2p.wrox.com Forums.

You are currently viewing the ASP.NET 2.0 Basics section of the Wrox Programmer to Programmer discussions. This is a community of software programmers and website developers including Wrox book authors and readers. New member registration was closed in 2019. New posts were shut off and the site was archived into this static format as of October 1, 2020. If you require technical support for a Wrox book please contact http://hub.wiley.com
Old November 15th, 2007, 09:51 PM
Authorized User
Join Date: May 2007
Posts: 73
Thanks: 4
Thanked 0 Times in 0 Posts
Default Some basic terms

It will be greate if someone explain me the following terms with example in vb.net.

Option explicit

Static and Shared

I got the basic definations of static and shared but donno are they valid for VB.Net??? If not they what will be correct defination?

Static Variable:
Normally, a local variable in a procedure ceases to exist as soon as the procedure terminates. A static variable remains in existence and retains its most recent value. The next time your code calls the procedure, the variable is not reinitialized, and it still holds the latest value you assigned to it. A static variable continues to exist for the lifetime of the class or module in which it is defined.

Shared Variable:Sharing a member of a class or structure makes it available to every instance, rather than having each instance keep its own copy. This is useful, for example, if the value of a variable applies to the entire application. If you declare that variable to be Shared, then all instances access the same storage location, and if one instance changes the variable's value, all instances access the updated value.

Any definations of all other terms will be appreciated.

Old November 16th, 2007, 12:07 AM
Wrox Author
Join Date: Oct 2005
Posts: 4,104
Thanks: 1
Thanked 64 Times in 64 Posts
Send a message via AIM to dparsons

This is one thing that annoys me about Visual Basic, mostly from the angle of a VB.NET programmer trying to move to C#. Anyway.

This may get a bit confusing but try and bear with me.

The shared keyword is most similar to the static keyword in C# essentially what it means is that a method belongs to a class and not an instance of a class. So

...Class definition
Public Shared Sub foo()
'Do something
End Sub

Public Sub fooNew()
'Do something
End Sub
'end class definitnion

So now you have a Shared sub and an instance member sub that you would access like this respectively:

'Shared Member

'Instance Member
Dim c as New MyNewClass()

The static keyword, as your defintion states: A static variable continues to exist for the lifetime of the class or module in which it is defined.

So this is what it means:

Public Sub foo(i as Integer)
    Static newI As Integer
    newI = i
End Sub

and you made a call like this:

your output would be:

And Option Explicit means that the compiler forces you to declare your variables (this is the default in VS), however, if you set Option Explicit Off it is legal to do something like

Public Sub foo()
   Response.Write(VarType(myUndeclaredVariable).ToStr ing())
End Sub

Which will write: object to the screen.

anyway hope that helps.

================================================== =========
Read this if you want to know how to get a correct reply for your question:
================================================== =========
.: Wrox Technical Editor :.
Wrox Books 24 x 7
================================================== =========

Similar Threads
Thread Thread Starter Forum Replies Last Post
Diff between terms : Pls help krishnet ASP.NET 2.0 Basics 2 July 15th, 2007 09:42 AM
Licensing Terms of Source Code? dsharpie BOOK: ASP.NET 2.0 Website Programming Problem Design Solution ISBN: 978-0-7645-8464-0 7 March 7th, 2007 10:20 AM
Terms & Conditions langer123 Classic ASP Basics 0 March 31st, 2005 07:54 AM

Powered by vBulletin®
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Copyright (c) 2020 John Wiley & Sons, Inc.