Components è questo vector:
codice:
vector<GameComponent*> Components;
codice:
class GameComponent : public OrderedObj
{
public:
virtual void LoadContent() = 0;
virtual void Initialize() = 0;
virtual void Update() = 0;
virtual void UnloadContent() = 0;
};
class OrderedObj
{
public:
int Order;
struct Sort
{
bool operator()(OrderedObj* &ob1, OrderedObj* &ob2)
{
return ob1->Order < ob2->Order;
}
};
};
Ho modificato la riga dove uso sort perchè ho spostato la struct all'interno della classe, e ho aggiunto i due punti, così:
codice:
std::sort(Components.begin(), Components.end(), OrderedObj::Sort);