我阅读了这篇关于wasm的教程,在第三点“调用由C定义的自定义函数”之后,我试图弄清楚如何将C++函数和类绑定到JavaScript中。 我需要使用Embind吗?如果需要,应该如何操作?我还发现了这个线程,@lacenen的第二个回答可能是一种解决方法。
大多数情况下,您只需要在WASM中调用一个函数。所以简单的方法是:#ifdef __cplusplus extern "C" { #endif void EMSCRIPTEN_KEEPALIVE MyFunc() { printf("MyFunc()\n"); } #ifdef __cplusplus } #endif 使用EmScripten编译,您将获得一个定义了Module的.js文件。 因此,在JavaScript端,您可以使用ccall--这是没有参数或返回值的调用:Module.ccall('MyFunc', null, null, null); 请参见:https://kripken.github.io/emscripten-site/docs/porting/connecting_cpp_and_javascript/Interacting-with-code.html#interacting-with-code-ccall-cwrap