小编Roo*_*t0x的帖子

Node-Addon-Api 传递数组作为函数参数

我正在尝试创建一个基本的本机节点插件,其中从节点传递一个 javascript 数组,然后在 C++ 中进行处理。问题是我无法弄清楚如何正确传递数组。我可以毫无问题地实例化数组,但使用 info[0].as 分配它会引发错误。

我的 C++ 代码是

#include <napi.h>

using namespace Napi;
using namespace std;

Value Add(const CallbackInfo& info) 
{
  Env env = info.Env();


  Array result = Napi::Array::New(env);
  Array a = info[0].As<Array>;

  double arg1 = info[1].As<Number>().DoubleValue();
  Number num = Napi::Number::New(env, 2 + arg1);

  return num;
}
Run Code Online (Sandbox Code Playgroud)

我得到的错误是

../cppsrc/main.cpp: In function ‘Napi::Value Add(const Napi::CallbackInfo&)’:
../cppsrc/main.cpp:12:21: error: conversion from ‘<unresolved overloaded function type>’ to non-scalar type ‘Napi::Array’ requested
   Array a = info[0].As<Array>;
             ~~~~~~~~^~~~~~~~~
Run Code Online (Sandbox Code Playgroud)

将数组传递给 C++ 的正确方法是什么?甚至有可能吗?

c++ node.js node.js-addon

4
推荐指数
1
解决办法
4268
查看次数

Qt 添加表格小部件的问题

我有一个发票表格,我用它来创建发票和显示存储发票的结果。当我试图从数据库读回数据并显示它时,我收到错误

QTableWidget: 不能插入一个已经被另一个 QTableWidget 拥有的项目 QTableWidget: 不能插入一个已经被另一个 QTableWidget 拥有的项目 QTableWidget: 不能插入一个已经被另一个 QTableWidget 拥有的项目 QTableWidget: 不能插入一个已经被另一个 QTableWidget 拥有的项目另一个 QTableWidget QTableWidget: 不能插入另一个 QTableWidget 已经拥有的项目

我不明白为什么会这样。我试图运行的查询将返回 4 行。我的代码在下面

QString CompanyID;
            int row = 0;
            ui->comboBox_Invoice_Account_Search->setCurrentIndex(1);
            QSqlQuery Account_Name_Query;
            QTableWidgetItem *Qty_Search = new QTableWidgetItem();
            QTableWidgetItem *Description_Search = new QTableWidgetItem();
            QTableWidgetItem *Product_Code_Search = new QTableWidgetItem();
            QTableWidgetItem *Unit_Price_Search = new QTableWidgetItem();
            QTableWidgetItem *Total_Price_Search = new QTableWidgetItem();
            while(Query.next())
            {
                CompanyID = Query.value(10).toString();
                //qDebug() << "CompanyID " << CompanyID;
                ui->lineEdit_Invoice_VAT->setText(Query.value(9).toString());
                ui->lineEdit_Invoice_Total->setText(Query.value(8).toString());
                ui->lineEdit_Goods_Total->setText(Query.value(7).toString());
                Qty_Search->setText(Query.value(3).toString());
                Description_Search->setText(Query.value(4).toString());
                Product_Code_Search->setText(Query.value(5).toString());
                Unit_Price_Search->setText(Query.value(6).toString());
                Total_Price_Search->setText(Query.value(7).toString());
                ui->tableWidget_Invoice->setItem(row, 0, …
Run Code Online (Sandbox Code Playgroud)

c++ sqlite qt qtablewidget qtablewidgetitem

2
推荐指数
1
解决办法
3375
查看次数