Suppose you want to pass an object to a method and also want to allocate the object into that method. If you pass the object as it is, it will not work because the memory that the object points to changes. To get around this, wrap this object into another object and pass that object as a parameter to the function.