gpt4 book ai didi

c++ - 将字符串设置为 v8 数组

转载 作者:行者123 更新时间:2023-11-30 00:48:05 25 4
gpt4 key购买 nike

我使用 Nan 研究原生 Node 插件。

所以我试图用以下代码向 Node 返回一个字符串数组:

NAN_METHOD(open) {
Local<Array> v8Array = Nan::New<Array>();
std::string str = "erwer";
v8Array->Set(0, Nan::New<String>(str.c_str()) );
//v8Array->Set(0, Nan::New<Integer>(12) );
info.GetReturnValue().Set(v8Array);
}

但它没有编译:

error: no matching function for call to ‘v8::Array::Set(int, Nan::imp::MaybeFactoryBase<v8::String>::return_t)’
v8Array->Set(0, Nan::New<String>(str.c_str()) );

但是添加一个项目作为整数(注释行)工作正常。为什么我不能将字符串添加到数组?

最佳答案

所以,最后我意识到,如果是字符串,第二个参数应该用 ToLocalChecked() 包装:

v8Array->Set(i, Nan::New<String>(results[i].c_str()).ToLocalChecked() );

关于c++ - 将字符串设置为 v8 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32950184/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com