生成了一个ArrayBuffer的js对象 传递给c++处理,请问在c++中它的对应类型是? 如何把它转成指针?
转成UInt8Array, c++里面使用string 接就好了
我做的是通过json透传的, 所以中途转了base64 再在C++里面转回来
UInt8Array, C++里边就是 uint8_t的数组指针。
需要手动修改jsb绑定的代码:
GLvoid *arg0;
GLsizei size;
ok &= JSB_get_arraybufferview_dataptr(cx, args.get(0), &size, &arg0);
arg0就是uint8_t*, 因为UInt8Array在js里就是uint8_t数组存储的,你甚至可以在C++里修改里边的内容,回到js里读取。
这里的size是整个UInt8Array的总长度,你可以在C++里读取你的数据的长度字段,或者多传一个实际长度参数。
转为Uint8Array,如果是通过socket传对应char[]直接处理就行了