我有一个名为“SeasonCreator”的Qt小部件项目,我想知道Qt小部件项目的结构。
ui_seasoncreator.h文件是隐藏的,但是当你查看它时,它定义了一个名为“Ui”的命名空间,并且它是一个类SeasonCreator的声明,它继承自Ui_SeasonCreator,即c。
在seasoncreator.h文件中,还有一个名为“Ui”的命名空间,还有一个名为“SeasonCreator”的类的声明。当我点击查找其原始声明时,它会引导我在ui_seasoncreator.h文件中声明Ui :: SeasonCreator。
这些命名空间和类的目的是什么?这两个定义是否相关?
这些Ui :: SeasonCreator声明中的任何一个都与seasoncreator.h中的自定义SeasonCreator类有关吗?
答案 0 :(得分:3)
这些命名空间和类的目的是什么?
ui_XXX.h中的代码是使用设计器创建表单时自动生成的代码。它被放入Ui命名空间。
这两个定义是否相关?
我假设你指的是这样的东西:
namespace Ui { class SeasonCreator; }
这是类的前向声明,它是生成的代码的一部分,使您的类可以访问自定义表单中的窗口小部件。
这些Ui :: SeasonCreator声明中的任何一个都与seasoncreator.h中的自定义SeasonCreator类有关吗?
将您的自定义代码与生成的代码链接起来。您应该有一个名为Ui::SeasonCreator *ui
的自定义类的成员变量,它是您用来访问生成的Ui类的对象。