Tôi có một danh sách các con trỏ cho các hàm thành viên nhưng tôi đang gặp khó khăn khi cố gắng gọi những hàm đó ... cú pháp thích hợp là gì?C++ Gọi con trỏ tới chức năng thành viên
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);
}
Cũng im cố gắng để thêm chức năng thành viên để nó ở đây
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);
}
xác định "gặp khó khăn" –
Không hoạt động lol và tôi không thể làm việc đó – ThingWings
Bạn có chắc chắn muốn thực hiện theo cách này và không sử dụng danh sách các phần tử Hộp và chức năng ảo không? –