所以,我正在使用FMOD api,它确实是一个C api.
不是那个坏或什么的.它只是它与C++代码没有良好的接口.
例如,使用
FMOD_Channel_SetCallback( channel, callbackFunc ) ;
Run Code Online (Sandbox Code Playgroud)
它想要一个C风格的函数callbackFunc,但我想传递一个类的成员函数.
我最终使用Win32技巧,使成员函数静态.然后它作为FMOD的回调.
现在我必须破解我的代码以使一些成员静态,只是为了解释FMOD的C-ness.
我想知道它是否可能在FMOD中或者是否有解决方法将回调链接到特定C++对象的实例成员函数(不是静态函数).它会更顺畅.