1.只能在堆上创建的对象
1) 把析构函数声明为private
2)定义一个destroy()函数,用这个函数来delete对象,
void destroy() {
delete this;
}2.只能在栈上创建的对象
1)覆盖operator new 和 operator delete 为priavate
本文详细解析了如何在C++中通过私有析构函数和自定义销毁函数来仅在堆上创建对象,同时介绍了如何利用重载运算符来限制对象在栈上的创建,深入探讨了内存管理在不同场景下的应用。
1.只能在堆上创建的对象
1) 把析构函数声明为private
2)定义一个destroy()函数,用这个函数来delete对象,
void destroy() {
delete this;
}1)覆盖operator new 和 operator delete 为priavate
4780

被折叠的 条评论
为什么被折叠?