http://www.learncpp.com/cpp-tutorial/912-shallow-vs-deep-copying/
On Fri, Nov 18, 2011 at 8:30 PM, Dheeraj Jain <[email protected]> wrote: > http://geeksforgeeks.org/forum/topic/deep-copy-vs-shallow-copy > > > On Fri, Nov 18, 2011 at 12:58 PM, Gene <[email protected]> wrote: > >> The most extreme shallow copy is just copying a pointer to a large >> data structure like a graph or tree. Deep copy is copying the entire >> data structure and returning a new pointer. >> >> Here is a more common example: >> >> typedef struct list { >> struct list *next; >> void *data; >> } LIST_NODE; >> >> In practice you'd want to code these as loops instead of recursion. >> But this gives the idea. >> >> LIST_NODE *shallow_copy(LIST_NODE *lst) >> { >> return lst ? new_list_node(shallow_copy(lst->next), data) : NULL; >> } >> >> LIST_NODE *deep_copy(LIST_NODE *lst) >> { >> return lst ? new_list_node(deep_copy(lst->next), data_copy(data)) : >> NULL; >> } >> >> Where data_copy is assumed to copy its argument into fresh memory and >> return a poionter and new_list_node returns a freshly allocated node >> with given fields. >> >> >> On Nov 18, 6:33 am, rahul sharma <[email protected]> wrote: >> > plz give me xample of these two .....as per from book m not able to get >> > thesw clearly,...i have reda from wiki and got it but cant relate with >> > these...plz differ b/w these two with xample..thnx in advance >> > >> > a shallow copy of an object copies all the member field values.this >> works >> > well if the fields are values,but may not be what we want for fields >> that >> > point to dynamically allocsted value.The pointer will be copied.But >> memory >> > it point will not be copied. >> > >> > a deep cpy copies all fields,and makes copies of dynamically allocated >> > memory pointed to by the fields.. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Algorithm Geeks" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected]. >> For more options, visit this group at >> http://groups.google.com/group/algogeeks?hl=en. >> >> > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/algogeeks?hl=en. > -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.
