Explain the difference between a shallow copy and a deep copy of data.

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter12: Points, Classes, Virtual Functions And Abstract Classes
Section: Chapter Questions
Problem 27SA
icon
Related questions
Question

Explain the difference between a shallow copy and a deep copy of data.

Expert Solution
Step 1: Difference between shallow and a deep copy of data

They differ in copying the pointer variable. If, for example, “first” and “sec” are integer pointers and the pointer first points to the following array,

Computer Science homework question answer, step 1, image 1

After the execution of the statement “sec=first”

In case of shallow copy, both “first”, and “sec” points to the same data item as follows,

Computer Science homework question answer, step 1, image 2

This is called as shallow copy, where “2” or more point of the same type points to the same memory (data).

In case of deep copy, for the assignment, the below thing is carried out,

sec= new int[5];

for(int j=0;j<5;j++)

                sec[j]=first[j];

Computer Science homework question answer, step 1, image 3

Here, both “first” and “second” point to their own data.

steps

Step by step

Solved in 2 steps with 3 images

Blurred answer
Knowledge Booster
Form
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
Principles of Information Systems (MindTap Course…
Principles of Information Systems (MindTap Course…
Computer Science
ISBN:
9781305971776
Author:
Ralph Stair, George Reynolds
Publisher:
Cengage Learning
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781285196145
Author:
Steven, Steven Morris, Carlos Coronel, Carlos, Coronel, Carlos; Morris, Carlos Coronel and Steven Morris, Carlos Coronel; Steven Morris, Steven Morris; Carlos Coronel
Publisher:
Cengage Learning
Principles of Information Systems (MindTap Course…
Principles of Information Systems (MindTap Course…
Computer Science
ISBN:
9781285867168
Author:
Ralph Stair, George Reynolds
Publisher:
Cengage Learning
Oracle 12c: SQL
Oracle 12c: SQL
Computer Science
ISBN:
9781305251038
Author:
Joan Casteel
Publisher:
Cengage Learning
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781305627482
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning