CAboutDlg::CAboutDlg() : CDialogEx(CAboutDlg::IDD)
比如两个类
class A
{
A(int *x);
...
}
class B : public A
{
B(int *x);
...
}
然后B在构造的时候
B::B(int *x) : A(x)
{
...
}
B是A的子类,B类对象在构造过程中必须先构造出一个A类对象,而A类的构造函数需要一个参数,就在这个:A(X)中把参数传递过去。这个写法叫“初始化列表”,它会在B的构造函数的{...}之前执行。如果不加,A又没有无参数的默认构造函数,应该不能通过编译。