在这里,我为处理程序分配一个参数:

const unsigned argc = 1;
v8::Local<v8::Value> argv[1] = { NanNew("hello world") };

NanMakeCallback(NanGetCurrentContext()->Global(), callHandle, argc, argv);


有用

但是我要分配两个参数!这就是为什么我尝试这样做:

 const unsigned argc = 2;
 v8::Local<v8::Value> argv[1] = { NanNew("hello world") };
 argv[2] = { NanNew("second argument") };

 NanMakeCallback(NanGetCurrentContext()->Global(), callbackHandle, argc, argv);


但是然后我得到这个错误:

functions.cc:97:18: error: expected expression
  argv[2] << { NanNew("second argument") };
             ^


我怎么了如何分配两个参数?谢谢

最佳答案

您似乎正在创建一个大小为1的数组:

v8::Local<v8::Value> argv[1] = { NanNew("hello world") };


然后尝试将{ NanNew("second argument") };分配给索引为2的元素。这将无法工作。您的意思是这样的吗:

v8::Local<v8::Value> argv[2] = { NanNew("hello world"), NanNew("second arg") };


关于c++ - 将参数传递给另一个函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30719815/

10-11 01:04