gpt4 book ai didi

c++ - c 中的类 vector 存在哪些非破坏性替代方案

转载 作者:行者123 更新时间:2023-11-30 02:03:02 28 4
gpt4 key购买 nike

我正在使用 vector 来保存指向类的指针。

class fooContainer{
private:
vector <Foo *> foos;
public:
void processFoo(int fooIndex);
};

我面临的问题是 pop_back() 丢弃了元素,我只想将其从 vector 中移除,但不想触及相关对象。我还需要从 vector 中删除所有元素,以准备重新启动主循环(但保留相同的 vector ,这是一个类属性)。

我需要一个具有动态大小但不复制或删除其元素的结构,满足于保存指向它们的指针。

有没有更好的替代结构,还是我用错了?

最佳答案

Vector 会复制并销毁其内容,但在您的情况下,内容是指向对象的指针而不是对象。
指向对象的特定指针将被销毁,但指向该对象的其他指针以及对象本身不会被销毁。

关于c++ - c 中的类 vector 存在哪些非破坏性替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12564933/

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