class A{ public: A(){ p = this }; ~A{ if( p != NULL){ delete p; p = NULL
}; } A *p; }
由于A类中有一个指针A *p;
而构造函数中有p = this;
也就是说整个指针指向了对象本身。
这个会导致无限构造。
所以不要构造本身的指针,p = NULL即可。
class A{ public: A(){ p = this }; ~A{ if( p != NULL){ delete p; p = NULL
}; } A *p; }
由于A类中有一个指针A *p;
而构造函数中有p = this;
也就是说整个指针指向了对象本身。
这个会导致无限构造。
所以不要构造本身的指针,p = NULL即可。