Я использую библиотеку SDL2_mixer, но я считаю, что вопрос также должен быть рассмотрен и для общего случая.Есть ли способ изменить область обратного вызова без изменения параметров?
В настоящее время функция, которую я хотел бы использовать, Mix_HookMusicFinished(void (*music_finished)(void))
имеет набор обратных вызовов для глобальной области для функции стиля C. Тем не менее, я хотел бы, чтобы этот обратный вызов был установлен в функцию-член в моем собственном классе void CMusic::musicFinished()
без необходимости в функции в глобальной области.
Есть ли все равно для этого? Что-то вроде Mix_HookMusicFinished(musicFinished)
было бы здорово, но в этом случае была ошибка argument of type "void (CMusic::*)()" is incompatible with parameter of type "void (*)()"