子类调用父类的构造函数

子类调用父类的构造函数

当子类在声明对象实例时,想显式调用父类的有参构函数。注意:不能在构造函数中直接调用父类的构造函数,否则会调用两次。应该通过参数列表来调用。代码如下:

class MyClassA//父类
{
public:
	MyClassA( CString str )
	{
		AfxMessageBox(str);
	}

	~MyClassA()
	{
	}

private:

};

class MyClassB:public MyClassA//子类
{
public:
	MyClassB():MyClassA(_T("子类参数"))//在此处调用父类有参构造函数
	{
	    //MyClassA(_T("子类参数"));	//不能在此处调用,否则会调用两次
	}

	~MyClassB()
	{
	}

private:

};

void CtestThreadDlg::OnBnClickedButton15()
{
	MyClassB a;
}