我想明白下面的代码。(我学习C++)类的构造函数初始化?
class DefaultDevice : public Device {
public:
DefaultDevice() :
ui(new DefaultUI) {
}
private:
RecoveryUI* ui;
};
class DefaultUI : public ScreenRecoveryUI {
...
}
我有一点小麻烦了解UI(新DefaultUI)一部分。 据我所知,它是DefaultDevice()构造函数执行前的初始化的一部分。
然后,从我的理解,它将打电话给ReocoveryUI构造函数与新的DefaultUI参数。但是,RecoveryUI类没有任何带有这样的参数的构造函数。(对不起没有构造RecoveryUI类,它太长了:(如果有人感兴趣,它是Android开源代码)
那么这个'new DefaultUI'怎么办?
尝试阅读一本好的C++编程书。他们会在几分钟内解释得比我们更好。另外,使用'g ++ -Wall -g'进行编译,并使用调试器'gdb'在代码中一步一步地进行编译。 – 2013-03-11 07:27:44