Wrox Programmer Forums

Need to download code?

View our list of code downloads.

Go Back   Wrox Programmer Forums > ASP.NET and ASP > ASP 3 Classic ASP Active Server Pages 3.0 > Classic ASP Professional
Password Reminder
Register
| FAQ | Members List | Search | Today's Posts | Mark Forums Read
Classic ASP Professional For advanced coder questions in ASP 3. NOT for ASP.NET 1.0, 1.1, or 2.0.
Welcome to the p2p.wrox.com Forums.

You are currently viewing the Classic ASP Professional 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
DRM-free e-books 300x50
Reply
 
Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old March 12th, 2006, 01:55 PM
Registered User
 
Join Date: Mar 2006
Location: , , .
Posts: 8
Thanks: 0
Thanked 0 Times in 0 Posts
Default Referencing the object that invoked a method

I want individuals who create an object of MyClass to be able to view all the properties and the property values. Also, it's handy to be able to write out the properties of an object and their values just for debugging purposes. Of course, having written the class definition myself, I know all the properties of the class, but one of the fundamental principles of object oriented programming is encapsulation (restricting access or hiding some of the object's data).

Most OOP languages have a mechanism to reference the object that invokes a method within the invoked method. Many languages use the "this" keyword to allow for an invoked method to reference the invoking object.

If it were possible in VBScript, then it would also be possible to use the "For...each" language construct of to iterate the object and write out all it's properties and values.

Specifally, this would allow me to write a "Print" method that does not require future modification even if the properties of MyClass are changed (i.e. adding properties or remving properties). Such a "Print" method would automatically scale with future property changes to the MyClass.

Here is the class definition VBScript/Psuedo:
----
Class MyClass

    Private m_strValue1
    Private m_strValue2
    Private m_lngValue1

    Private Sub Class_Initalize()
        m_strValue1 = "one"
        m_strValue2 = "two"
        m_lngValue1 = 1
    End Sub

    Public Sub Print()
        For Each x in (ref. to the object that invoked this method)
            'Code to access object properties and property values
        Next
    End Sub

End Class
----

Here is the class implementation VBScript/Psuedo:
----
Dim myObj

Set myObj = New MyClass
myObj.Value1 = "hello world"
myObj.Print
Set myObj = Nothing
----

Here would be the expected output:
----
m_strValue1 = one
m_strValue2 = two
m_lngValue1 = 1
----

Notice the "(ref. to the object that invoked the method)" in the class definition... is there a mechanism in VBScript that will allow for this type of reference?

If so, what is it?

Thanks for any help
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Number of variables referencing an Object Muyavil Java Basics 3 April 11th, 2009 11:02 PM
referencing an object in an edit item template dan195 ASP.NET 1.0 and 1.1 Basics 3 September 25th, 2006 07:15 AM
Automation error The object invoked has disconnect vensee Crystal Reports 0 April 11th, 2005 06:12 PM
The object invoked has disconnected from its clien Ciarano Beginning VB 6 2 March 12th, 2004 11:38 AM
Referencing an object from within a procedure mike123abc Beginning VB 6 5 February 3rd, 2004 02:51 PM



All times are GMT -4. The time now is 07:51 PM.


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