if an object is passed by reference, the changes made in the function are reflected _.
on the caller function object and also the called function object
to the main object of the caller function, too
only in the local scope of the called function
on the copy of the object that is made during the pass