西甲甲 2022-04-06 00:53 采纳率: 33.3%
浏览 33
已结题

指针作为形参无法传参是什么原因?提示左值无法初始化形参

问题遇到的现象和发生背景
class DengtaMainWindow : public QWidget
{
    Q_OBJECT

public:
    DengtaMainWindow(QWidget *parent = nullptr);
    ~DengtaMainWindow();

private:
    void SetChildNavItem(QStanardItem* parent, QString& navName);

private:
    Ui::DengtaMainWindow *ui;
    QToolBox* mToolBox;

    QStandardItemModel* navModel;
};


问题相关代码,请勿粘贴截图
DengtaMainWindow::DengtaMainWindow(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::DengtaMainWindow)
{
    ui->setupUi(this);
    QStandardItemModel model;
    QStandardItem* parentItem = model.invisibleRootItem();
  
    SetChildNavItem(parentItem,"全部");

}
运行结果及报错内容

调用这个自定义函数时报错
error: cannot initialize a parameter of type 'QStanardItem *' with an lvalue of type 'QStandardItem *'

有人知道是什么原因吗?

展开全部

  • 写回答

1条回答 默认 最新

  • 不知怎么说 2022-04-06 01:11
    关注

    你没发现你传的参数的类型 跟你函数的参数类型 不是同一类型吗?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 4月13日
  • 已采纳回答 4月6日
  • 创建了问题 4月6日