gpt4 book ai didi

c++ - 我应该在 c++ 类中使用什么,有或没有 "new"?

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:24:05 28 4
gpt4 key购买 nike

什么时候应该使用指针,什么时候不需要?什么是更好的方法?必须删除程序末尾指针的猫对象吗?

例子:

cat piki;
piki.miao();
cat *piki2 = new cat();
piki2->miao();

最佳答案

尽可能避免使用new(即在堆上)创建对象,因为您必须自己进行内存管理(或者至少您需要使用 smart指针)。如果您在堆栈上分配对象(即 cat piki;),为 cat 对象分配的内存会在 piki 退出时自动释放范围。 piki2 不会发生这种情况,您需要明确执行 delete piki2; 以释放内存。

关于c++ - 我应该在 c++ 类中使用什么,有或没有 "new"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3665908/

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