Qt-这些代码段是什么意思

问题描述

| 我只是对
C++ GUI Programming with Qt 4
书中的那些代码片段有疑问:
GoToCellDialog::GoToCellDialog(QWidget *parent):QDialog(parent)
这是否意味着我们正在继承
QDialog(parent)
?或者,这到底是什么意思?
setupUi(this);
在此,此代码段是
gotocelldialog.cpp
文件的一部分,该文件是is5ѭ头文件的实现。在这种情况下,“ 6”是什么意思?我们正在尝试设置什么?而且,那将是什么样的设置? 谢谢。     

解决方法

GoToCellDialog::GoToCellDialog(QWidget *parent) : QDialog(parent)
ѭ8表示初始化列表。这意味着,将“ 9”作为参数传递给“ 10”构造函数。我假设ѭ11是从ѭ10派生的,因此将
parent
发送给它的构造函数。因此,在执行ѭ11even的偶数主体之前,先执行
QDialog
构造函数。 这个例子应该给你一个想法-
class foo
{
    int number ;
    public:
        foo(int i) : number(i) // Means copying value of i to number
        {}
};

class bar : public foo
{
    public:
        bar(int temp) : foo(temp)
        { // <- Before getting here,foo sub object must be constructed.
          //  Because the order of construction takes from parent to child.
        }
};
在上面的示例中,在实例化
bar
时,必须传递
foo
构造函数的参数。因此,初始化列表是唯一的方法,因为没有可用于
foo
的默认构造函数(即没有参数的构造函数)。     ,要回答您的问题:   这是否意味着我们继承了QDialog(parent)? 是的,这是基本的C ++继承。   
setupUi(this);
简而言之:\“用户界面编译器”(uic)将xml文件编译/转换为C ++代码,然后将其编译和链接。 setupUi()函数可通过构建窗口小部件树来确保将您制作的Qt设计器窗口小部件(生成的C ++代码)设置为由代码使用。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...