1.环境


参考网站:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly
http://kripken.github.io/emscripten-site/
2.WebAssembly简介
WebAssembly是实验性代码,为.wasm后缀二进制文件,可以通过emcc将c/cpp编译成wasm文件,再通过WebAssembly.instantiate(bufferSource, importObject) 实现cpp与js的交互。
3.编写c/cpp文件
将cpp函数导出,其中一种方式是extern "C" {}包围
main.cpp 实现js调用cpp的随机函数生成器
#include<stdio.h>
#include <random>
#include <iostream>
#include <atomic>
#include <math.h>
using namespace std;
extern "C" {
mt19937 engine;
void setSeed(long

本文介绍了如何使用WebAssembly让JavaScript调用C/C++函数。首先,阐述了WebAssembly的基本概念和作用,然后详细讲解了从编写C/C++文件,到编译成WASM格式,再到JavaScript中调用这些函数的步骤。最后,通过示例展示了在index.html中如何实现调用并输出结果。
最低0.47元/天 解锁文章
888





