# \[Flash 8, AS 2\] Variables by reference. Stupid language question

**URL:** <https://forum.kirupa.com/t/flash-8-as-2-variables-by-reference-stupid-language-question/205602>\
**Category:** Uncategorized\
**Created:** [October 31, 2006, 3:59am UTC](https://forum.kirupa.com/t/flash-8-as-2-variables-by-reference-stupid-language-question/205602 "2006-10-31T03:59:17Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![UnFleshed\_One](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/unfleshed_one/32/2965_2.png) [@UnFleshed\_One](https://forum.kirupa.com/u/UnFleshed_One)\
**Post date:** [October 31, 2006, 3:59am UTC](https://forum.kirupa.com/t/flash-8-as-2-variables-by-reference-stupid-language-question/205602/1 "2006-10-31T03:59:17Z")

</div>

Coming from C++ background, I am dumbed by this language…

How can I pass parameters by reference? So it doesn’t make a copy out of it, but modifies whatever I pass in?

This:

function ChangeString(string:String)  
{  
string = “inside string”;  
}

var str:String = “outside string”;  
ChangeString(str);  
trace(str);

outputs “outside string”, since functions seem to take objects by value.

So what do you guys do if you need to get multiple variables out of functions? Returning a custom class? There must be a better way!

Thanks.
