为游戏c ++高效存储对象指针

时间:2015-07-01 07:30:32

标签: class pointers vector

我正在为GTA San Andreas制作一个迷人的修改代码。游戏有自己的类,其中一个是class CPed。它处理由游戏创建的随机行人的属性,这在存储中是巨大的。我在代码CPed*中使用指向这些对象的指针。现在我使用vector<CPed*> myList;来处理这些对象/ peds。

将这些存储到容器中以供进一步使用的最有效方法是什么?游戏本身处理这些物体的破坏。

1 个答案:

答案 0 :(得分:1)

实际上,{p> std::vector实际上应该足够了。一般来说,在挑选容器时,您应该考虑使用它来进行操作,但vector几乎总是一个好的开始。

如果您需要键值查找,那么std::unordered_map / std::map也可以使用。

如果您需要绝对最佳性能,则需要自己对不同容器进行基准测试。使用std::算法和range-for应保证轻松替换。