可能重复:
构造函数中这个奇怪的冒号成员语法是什么?
我需要快速回答以下问题。它是关于一个 C++ 类(一个 QT 派生类,但我认为这在这里并不重要)。
在头文件中,我有以下声明:
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
而在源文件中我有以下定义:
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
{
QWidget * central = new QWidget(this);
这个问题,也许清楚地表明了我对 C++ 的无知,它是:
: QMainWindow(parent)
在构造函数的定义中是什么意思?是某种默认初始化吗?这是否与构造函数是显式的这一事实有关(我对它的含义有所了解,但没有详细说明)?
拜托,我知道这个问题可能非常简单和菜鸟,我只是不知道从哪里开始。
谢谢你。
编辑:感谢所有回答的人。