18. Copying Objects
This chapter discusses some of the subtleties involved in copying objects. We introduce the concept of shallow versus deep copying and discuss how to make copies under the Foundation framework.
Chapter 8, “Inheritance,” discussed what happens when you assign one object to another with a simple assignment statement, such as here:
origin = pt;
In this example, origin and pt are both XYPoint objects with two integer instance variables called x and y.
Recall that the effect of the assignment is to simply copy the address of the object pt into origin. At the end of the assignment operation, both variables point to the same location in memory. Making changes to the instance variables with a message such as
[origin setX: 100 andY: ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access