如何解决如何在node-addon-api中从c ++返回float32数组?
我正在尝试使用 node-addon-api 在 node.js 中运行 c++。
我读过一篇来自媒体的精心编写的文章。
但是我想将一个浮点数传递给我的一个函数,并将一个浮点数组传递给另一个函数。
我想从他们两个返回一个浮点数组。
函数示例 (greeting.cpp
)
#include <iostream>
#include <string>
#include <cmath>
#include "greeting.h"
float* helloUser( float name ) {
float* result = new float[3];
result[0] = 1;
result[1] = 2;
result[2] = name;
return result;
}
以及带有模块本机实现的 index.cpp
代码:
#include <napi.h>
#include <string>
#include "greeting.h"
Napi::Float32Array greetHello(const Napi::CallbackInfo& info) {
Napi::Env env = info.Env();
float user = (float) info[0].ToNumber();
float* result = helloUser( user );
return Napi::Float32Array::New(env,result);
}
Napi::Object Init(Napi::Env env,Napi::Object exports) {
exports.Set(
Napi::String::New(env,"greetHello"),// property name => "greetHello"
Napi::Function::New(env,greetHello) // property value => `greetHello` function
);
return exports;
}
NODE_API_MODULE(greet,Init)
问题是,Napi::Float32Array
不起作用,我试过 Napi::TypedArrayOf<float>
,它也不起作用。我不太喜欢编写模块。
我只希望我在 node 中运行的纯 C++ 代码将其结果发送到前端。
我尝试使用 Napi::Number
接受和返回浮点数,它工作正常。
但我不知道如何让它开始使用数组。
任何帮助表示赞赏。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。