hur.cn - 华软网

 热门搜索

请教MFC中的构造函数重载问题

  作者:未知    来源:网络    更新时间:2011/7/15
请教高手们:

在Cdialog的子类中,有如下的构造函数:
CMainDlg::CMainDlg(CWnd* pParent /*=NULL*/) : CDialogEx(CMainDlg::IDD, pParent)
{

}

我想重载该函数:

CMainDlg::CMainDlg(CWnd* pParent, bool * Owner, CString * XML, bool bBuild) : CDialogEx(CMainDlg::IDD, pParent){

}

我以上的写法对吗?
如果不对,我应该如何写?如果对,那么,我在new的时候,应该如何操作?

CMainDLg maindlg = new CMainDlg(NULL,NULL);

是这样的吗?


---华软 网友回答---
重载的函数,需要给出pParent的默认参数:

CMainDlg::CMainDlg(CWnd* pParent=NULL, bool * Owner, CString * XML, bool bBuild) : CDialogEx(CMainDlg::IDD, pParent){

}

---华软网友回复---
New的时候不带参数;
CMainDLg maindlg = new CMainDlg;
---华软网友回复---
而且New的应该是指针,而不是对象。
CMainDLg *pmaindlg = new CMainDlg;
---华软网友回复---
C++">
CxxxDlg::CxxxDlg(BOOL Owner, CWnd* pParent /*=NULL*/)
: CDialog(CRedSet::IDD, pParent)
{
}

CxxxDlg maindlg = new CxxxDlg(1);

---华软网友回复---
引用 4 楼 hezhe1008 的回复:
C/C++ code

CxxxDlg::CxxxDlg(BOOL Owner, CWnd* pParent /*=NULL*/)
    : CDialog(CRedSet::IDD, pParent)
{
}

CxxxDlg *maindlg = new CxxxDlg(1);

少一个*      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。