依旧是惯例
See the Pen Aurora Borealis by 攻伤菊菊长 (@THISISAGOODNAME) on CodePen.
前天写了篇webidl相关的文章,觉得写得不够清楚,这次写一个完整实例
创建Bar class
在c++代码中创建Bar类
创建IDL文件
创建一个IDL文件,文件名任意,我以my_classes.idl为例
编译idl文件生成胶水文件
运行tools/webidl_binder.py脚本
$EMSCRIPTEN指emscripten的根目录
运行完webidl_binder.py脚本之后,文件夹下会生成glue.cpp和glue.js两个文件
创建一个文件包含glue.cpp
创建一个cpp文件,文件名任意,我以my_glue_wrapper.cpp为例
在该文件中包含glue.cpp和项目的头文件,比如在本例中,my_glue_wrapper.cpp的内容应该为
编译项目
编译工程,记得添加my_glue_wrapper.cpp和glue.js
测试
创建一个html文件,记得包含output.js
之后,可以和在向JS对象相同的方法来使用编译的C++对象