gpt4 book ai didi

c++ - 是否可以防止对象的堆栈分配并只允许使用 'new' 对其进行实例化?

转载 作者:IT老高 更新时间:2023-10-28 14:01:05 27 4
gpt4 key购买 nike

是否可以阻止对象的堆栈分配,只允许在堆上使用“new”启动它?

最佳答案

您可以这样做的一种方法是将构造函数设为私有(private),并且只允许通过返回指针的静态方法进行构造。例如:

class Foo
{
public:
~Foo();
static Foo* createFoo()
{
return new Foo();
}
private:
Foo();
Foo(const Foo&);
Foo& operator=(const Foo&);
};

关于c++ - 是否可以防止对象的堆栈分配并只允许使用 'new' 对其进行实例化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/124880/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com