c – Qt:无效使用不完整类型和前向声明

c – Qt:无效使用不完整类型和前向声明,第1张

概述我有一些误解: 啊 #ifndef A_H#define A_H#include "B.h"class A : public B{ Q_OBJECTpublic: A();};#endif A.cpp #include "A.h"A::A(){ B::ui->blancH2->setValue(2);} B.h #include <QWidget> 我有一些误解:

#ifndef A_H#define A_H#include "B.h"class A : public B{    Q_OBJECTpublic:    A();};#endif

A.cpp

#include "A.h"A::A(){    B::ui->blancH2->setValue(2);}

B.h

#include <QWidget>#ifndef B_H#define B_Hnamespace Ui {    class B;}class B{    Q_OBJECTpublic:    explicit B(QWidget *parent = 0);public:    Ui::B *ui;};#endif

编译结果我有下一个错误:
A.cpp:在构造函数’A :: A()’中:无效使用不完整类型’类Ui :: B’
B.h:’类Ui :: B’的前向声明

谁能解释为什么我有这个错误?

@H_404_34@解决方法 检查你ui_B.h.最后,你应该看到

namespace Ui {    class B: public Ui_B {};}

如果不是,您可以在Qt Designer中打开.ui文件,选择您的小部件,在Object Inspector中,将’Object’下的字符串更改为’B’.如果您的小部件是对话框,则默认值为“Dialog”.

不要直接修改ui_B.h,因为它是由Qt编译器生成的,每次编译时都会被覆盖.

总结

以上是内存溢出为你收集整理的c – Qt:无效使用不完整类型和前向声明全部内容,希望文章能够帮你解决c – Qt:无效使用不完整类型和前向声明所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1224451.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-05
下一篇2022-06-05

发表评论

登录后才能评论

评论列表(0条)

    保存