В C / C ++ я обычно выполняю обратные вызовы с помощью простого указателя на функцию, возможно, также передав void* userdataпараметр. Что-то вроде этого: typedef void (*Callback)(); class Processor { public: void setCallback(Callback c) { mCallback = c; } void processEvents() { for (...) { ......