Tag: difference between shallow copy and deep copy constructor in c++