gpt4 book ai didi

c++ - 谁应该拥有指针

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:19:27 25 4
gpt4 key购买 nike

<分区>

在编程时,我多次遇到以下设计选择:用户创建一个对象并将其传递给其他对象,该对象在第二阶段以某种方式进行处理。

例如,您可以想象一个光线追踪器。用户创建一个具有特定属性的球体并调用 raytracer.addTraceable(sphere)。现在,我可以想到三种方法。

  1. 光线追踪器负责释放分配给球体对象的内存
  2. 用户需要释放分配给球体对象的内存。
  3. 光线追踪器仅复制球体对象,用户和光线追踪器都释放其本地拷贝。

通常在这种情况下最好的设计选择是什么?除了我提到的那些(不包括智能指针),还有其他选择吗?

PS:在使用面向对象的方法时,我在纯 C 中遇到过同样的问题。

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