将Node.js缓冲区传递给C ++插件

test.js

buf = new Buffer(100); for (var i = 0; i < 100; i++) buf[i] = i addon.myFync(buf); 

addon.cpp

 Handle<Value> set(const Arguments& args) { char *buf = SOMETHING(args[0]); return Undefined(); } 

如何获得指向C ++函数内缓冲区的数据的指针?

我应该写什么来代替SOMETHING(args[0])

我在我的编辑器中打开了node_buffer.h,但我无法弄清楚。

节点版本= v0.10.29

你可以做:

 char* buf = node::Buffer::Data(args[0]); 

直接访问一个Buffer的字节。

根据node.js 节点绑定文档的'arg [0]'值参数可以被访问为:

 String::AsciiValue v(args[0]->ToString());