SmartPtr(SmartPtr<T> & rhs):pointee(rhs.pointee){ rhs.pointee=0;}
时间: 2024-04-03 15:35:07 浏览: 118
智能指针源码 smartptr
这是一个拷贝构造函数,用于实现智能指针的拷贝功能。其中,rhs 是传入的另一个 SmartPtr 对象的引用。在构造函数中,我们把 rhs 的指针成员变量 pointee 赋值给当前对象的 pointee 成员变量,然后将 rhs 的 pointee 成员变量置为 0,这是为了避免两个智能指针同时指向同一块内存,造成重复释放的问题。这个操作实现了浅拷贝,即两个智能指针指向同一个对象,但是只有一个负责对象的资源管理。
阅读全文