Question: The class A is responsible for managing a single int (not an array) on the heap. Write a copy constructor that does a deep copy

 The class A is responsible for managing a single int (not

The class A is responsible for managing a single int (not an array) on the heap. Write a copy constructor that does a deep copy of an A object. You need to accept an A& as parameter, get the value of that object's myNumber and make your own int on the heap that contains that value Hints One way to start is by just allocating a new int in the copy constructor and always giving it the value 10 (or something else arbitrary), It won't pass the tests, but you can use that to verity that the copied object actually owns its own memory (10 won't get wiped out by changing the original). other.myNumber is a pointer to an int. If you want the value of other's myNumber you need to do "other.myNumber Code #1nclude 3 using nazespace std; 5 class A f 6 public: A(int num) myNumber = new int (num); { 10 11 //Do not modify anything on or above the line below this 12 //YOUR CODE BELOW 13 14 15 16 //YOUR CODE ABOVE 17 //Do not modify anything on or below the line above this /YOUR CODE void print) 19 20 21 23 24 25 26 27 private: void setNum(int value) myNumbervalue; int myNumber //Memory address of number we own 29 30 31 int main) A thing1(5) //thing1 points to 5 34 35 36 37 38 39 A thing2(thingl)i //thing2 copies thingl thingl.setNum (8) thingl.print1/8 41 42 4 3 thing2.print):I/should sti11 be 5 - if 8 you have a shallow copy cout

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!