Solved

Basic Object assigning problem (Byval not working)

Posted on 2004-04-07
4
242 Views
Last Modified: 2010-04-17
Dear All,

I have Obj1 and Obj2 as objects of class1. When I access these 2 objects independently it works fine but when I say set Obj1=Obj2 it gets assigned by REF. So when I can Obj1's property Obj2's property also gets set.

Now I dont want this so I have written an function which accepts parameters as BYVAL and returns the objects which I again assigns to Obj1. Eg.


Function AssignByVal (Byval vdata as Object) as Object
   set AssignByVal = vdata
end sub

But this not works. It only works when I assign byval using piece - by piece method.
0
Comment
Question by:Shaileng
4 Comments
 

Accepted Solution

by:
Doknjas earned 25 total points
ID: 10780799
When you set an object reference to another object, both references point to the same object.  If you want to return a copy, then you have to do that yourself by implementing your own copy constructors - serialization will simplify this.

Passing the original object ByVal just ensures that the original object reference will not be pointing elsewhere after the method returns to the calling method.
0
 
LVL 70

Assisted Solution

by:Éric Moreau
Éric Moreau earned 25 total points
ID: 10782829
You need to implement a Clone method. See an article I wrote on the subject: http://www.utmag.com/July2003/Page8.asp
0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I know it’s not a new topic to discuss and it has lots of online contents already available over the net. But Then I thought it would be useful to this site’s visitors and can have online repository on vim most commonly used commands. This post h…
This article is meant to give a basic understanding of how to use R Sweave as a way to merge LaTeX and R code seamlessly into one presentable document.

821 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question