指针作为类变量 Qt
Pointer as a class variable Qt
当你刚刚创建Qt应用程序时,它会自动为你创建主窗口,除了私下的最后一件事,我几乎理解了一切:范围
#include <QMainWindow>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
};
谁能解释一下那Ui::MainWindow *ui;
是什么样的指针以及它的目的是什么?据我了解,它是一个空指针"for future"类型,其类是 MainWindow,所以这意味着这个成员是它自己的类中的一个对象,我说得对吗?
附言,创建该命名空间 Ui 的必要性是什么?
这是指向自动生成的类的指针(基于Qt Designer创建的.ui文件,或者更准确地说 - uic.exe(。您需要它来访问放置在设计器中窗体上的小部件(因为您不在代码中手动创建它们(。
除此之外,这没什么特别的。只是一个指向某个前向声明类的指针(在您的情况下将在 ui_MainWindow.h 中定义(。它有自己的命名空间,不会与您的类发生冲突。
相关文章:
- 查找后更改类变量
- 如何避免在仅标头库中C++类/变量重定义
- c++ 在非类函数中使用类变量
- 基于模板的类变量
- 调试符号中缺少 QObject 类信息(编辑但存在其他 Qt 类)
- 分段 访问私有类变量时出错
- 为什么从另一个构造函数内部调用C++构造函数不修改类变量?
- 如何访问基类向量中的子类变量?(对于实体组件系统)
- 模板类变量作为非模板类的成员
- C++11 - 获取编译时的所有类变量,并在没有 Boost 的情况下为它们调用方法
- 如何在构造函数中访问类变量以分配它们,而无需在C++中使用此指针
- 类变量无法从类方法访问
- 指针作为类变量 Qt
- 为什么线程对类变量所做的更改没有影响?
- memcpy() 在一个类中被调用以复制到另一个类变量中后会引发异常
- C++:使用基类中的仅派生类变量
- 如何使用Qt类编译rpcgen文件?
- 如何声明从 QApplication 派生的 Qt 类并覆盖通知函数?
- 从静态成员函数访问私有非静态类变量 - C++
- Qt C++类变量未初始化