この最適化の質問は、最後の日私を悩ませてきました。
私のプログラム(単純なローグライクゲーム)では、ビット単位のフラグを使用して、マップオブジェクトの属性を格納します。たとえば、それらがソリッドであるか、レンダリングされているかなどです。ただし、ポリモーフィズムを使用して適切な値を返すことはできました。
私の質問は、リンクリストループで使用した場合、他の方法よりも大幅に速いか遅いかということです。また、一方が他方よりも優れた実践ですか?
コードの例:
XMapObject *List = ListStart;
while(List != NULL)
{
if(List->MapObjectFlags & MAPOBJECTFLAG_RENDER)
OR
if(List->Render())
{
return List->Type;
}
else
{
List = List->Next;
}
}
bool XMapObject::Render()
{
return 1;
}
ありがとう。