4
編程遊戲時,我用來將所有遊戲對象存儲在具有初始化和固定大小的std :: vector中。最近我覺得需要在遊戲對象類中進行一些繼承。用於C++中不同派生類的高效容器
所以我們假設我有40個類從我的敵人派生出來。如果我想將這些類的對象/實例存儲在一個向量中,我只能選擇將它們存儲爲向量Enemy *對嗎?所以連續分配的唯一東西就是指針,對吧?所以當這些需要被解除引用時,我仍然會有很多緩存未命中,對吧?
是否有任何「最佳實踐」的方式,將派生類存儲在合理分配的內存中,以便循環遍歷它們需要最少的時間?
我認爲他在談論類實例。這似乎很明顯。 – TinkerTenorSoftwareGuy
我指的是這些類的對象。實例。在運行時創建並分配的東西。 – user3808217
使用指向基類內的向量,或者如果它更合適,某種智能指針。 – Klaus