浅拷贝构造是创建一个对象B,并使B与A指向同一地址。
深拷贝构造是创建一个对象B,使B与A所指向的地址里面的东西一模一样。
具体含义不再表诉。
#include<iostream> using namespace std; class Stu { public: Stu() { p=new int(1000); cout<<"p="<<p<<endl; cout<<"students"<<endl; } ~Stu() {cout<<"~students"<<endl; delete p;} /* Stu(const Stu &r)//-----------------------删去此段代码,运行会出现错误,因为默认的拷贝为浅拷贝,并不会多创建一个p { a=r.a; b=r.b; p=new int; *p=*(r.p); cout<<"copy success"<<endl;} */ private: int *p; int a; int b; }; int main() { Stu m; Stu n=m; cout<<&m<<'\t'<<&n<<endl; }