4
编程游戏时,我用来将所有游戏对象存储在具有初始化和固定大小的std :: vector中。最近我觉得需要在游戏对象类中进行一些继承。用于C++中不同派生类的高效容器
所以我们假设我有40个类从我的敌人派生出来。如果我想将这些类的对象/实例存储在一个向量中,我只能选择将它们存储为向量Enemy *对吗?所以连续分配的唯一东西就是指针,对吧?所以当这些需要被解除引用时,我仍然会有很多缓存未命中,对吧?
是否有任何“最佳实践”的方式,将派生类存储在合理分配的内存中,以便循环遍历它们需要最少的时间?
我认为他在谈论类实例。这似乎很明显。 – TinkerTenorSoftwareGuy
我指的是这些类的对象。实例。在运行时创建并分配的东西。 – user3808217
使用指向基类内的向量,或者如果它更合适,某种智能指针。 – Klaus