首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从函数中传递QStandardItemModel?

如何从函数中传递QStandardItemModel?
EN

Stack Overflow用户
提问于 2014-09-16 12:37:17
回答 1查看 873关注 0票数 1

为了在QTableView中显示一些数据,我使用一个函数来计算QStandardItemModel并将其发送回调用函数。

函数调用:

代码语言:javascript
复制
QStandardItemModel MyModel = computeMyModel();
ui->tV->setModel(&MyModel);

被叫函数

代码语言:javascript
复制
QStandardItemModel computeMyModel()
{
    QStandardItemModel newModel;
    //........... Steps to compute newModel
    return newModel;
}

当我试图运行代码时,我会得到以下错误。

代码语言:javascript
复制
error C2248: 'QStandardItemModel::QStandardItemModel' : cannot access private member declared in class 'QStandardItemModel'

如何解决这个问题?(如何通过引用成功地将myModel从一个函数传递到另一个函数?)

制约因素:

  1. 我只需要计算computeMyModel()函数中的模型。
  2. 我不喜欢通过引用从调用函数传递模型到computeMyModel()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-16 12:45:38

试试这个:

代码语言:javascript
复制
QStandardItemModel* computeMyModel()
{
    int counter = 0;
    QStandardItemModel *model = new QStandardItemModel;
    for (int i = 0; i < 3; ++i)
        for (int j = 0; j < 3; ++j)
        {
            counter++;
            QStandardItem *item = new QStandardItem(QString::number(counter));
            model->setItem(i,j,item);


        }
    return model;
}

使用:

代码语言:javascript
复制
QStandardItemModel *model = computeMyModel();

ui->tableView->setModel(model);

更新。

不是的。这将是正常的,因为您分配内存和返回指针,您的指针有这个内存入口,它将拥有它,直到有东西删除它。要证明这一点,请看下面的代码片段。如您所见,您在函数中分配内存,返回指针,使用该指针设置数据并调用setModel。它编译并工作。

功能:

代码语言:javascript
复制
QStandardItemModel* computeMyModel()
{
    QStandardItemModel *model = new QStandardItemModel;
    return model;
}

使用

代码语言:javascript
复制
int counter = 0;
QStandardItemModel *model = computeMyModel();

for (int i = 0; i < 3; ++i)
    for (int j = 0; j < 3; ++j)
    {
        counter++;
        QStandardItem *item = new QStandardItem(QString::number(counter));
        model->setItem(i,j,item);
    }
ui->tableView->setModel(model);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25868963

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档