Ho una lista di puntatori alle funzioni membro, ma sto avendo difficoltà a cercare di chiamare quelle funzioni ... Qual è la sintassi corretta?Puntatore di chiamata C++ alla funzione membro
typedef void (Box::*HitTest) (int x, int y, int w, int h);
for (std::list<HitTest>::const_iterator i = hitTestList.begin(); i != hitTestList.end(); ++i)
{
HitTest h = *i;
(*h)(xPos, yPos, width, height);
}
anche nel tentativo di aggiungere funzioni membro ad esso qui
std::list<HitTest> list;
for (std::list<Box*>::const_iterator i = boxList.begin(); i != boxList.end(); ++i)
{
Box * box = *i;
list.push_back(&box->HitTest);
}
definire "avere un momento difficile" –
Non funziona lol e non riesco a farlo funzionare – ThingWings
Sei sicuro di voler fare le cose in questo modo, e non utilizzando un elenco di elementi Box e una funzione virtuale? –