CDialogEx::OnInitDialog();出现野指针
时间: 2023-11-08 22:10:13 浏览: 145
野指针问题
3星 · 编辑精心推荐
可能原因:
1. 未调用父类的`OnInitDialog()`函数;
2. `CDialogEx`对象未成功创建;
3. 对话框资源未正确加载。
解决方法:
1. 在子类的`OnInitDialog()`函数中首先调用父类的`OnInitDialog()`函数,例如:
```c++
BOOL CMyDialog::OnInitDialog()
{
CDialogEx::OnInitDialog(); //调用父类的OnInitDialog()函数
//其他初始化操作
}
```
2. 确保`CDialogEx`对象成功创建,可以在创建对话框的函数中检查返回值,例如:
```c++
CMyDialog dlg;
INT_PTR nRet = dlg.DoModal();
if (nRet == IDOK)
{
//对话框操作
}
```
3. 检查对话框资源是否正确加载,可以在资源文件中打开对话框资源查看是否存在问题。
阅读全文