Pass const std::function<void()> as parameter in SDL_AddTimer as void*
I am trying to pass a const std::function<void()> & as void * to SDL_AddTimer, which its 3rd parameter is void *. I tried with reinterpret_cast SDL_AddTimer(interval, wrapper, reinterpret_cast<void *>(const_cast<std::function<void()> *>(fn))); But on my wrapper, it crashes uint32_t wrapper(uint32_t interval, void *param) { auto fn = static_cast<std::function<void()> *>(param); (*fn)(); // crashes here. return interval; } What… Read More Pass const std::function<void()> as parameter in SDL_AddTimer as void*