当前位置: 首页 > 工具软件 > DocMgr > 使用案例 >

断言docmgr.cpp,852行的问题

都博裕
2023-12-01
Programming  VC++,中文书名《VC++ 技术内幕》的示例ex20d演示了MDI程序中多doc/view的使用,加了一个HexView
其中的CEx20dApp::InitInstance()函数中:
    CMultiDocTemplate* pDocTemplate;
    pDocTemplate = new CMultiDocTemplate(
        IDR_EX20DTYPE,
        RUNTIME_CLASS(CPoemDoc),
        RUNTIME_CLASS(CChildFrame), // custom MDI child frame
        RUNTIME_CLASS(CStringView));
    AddDocTemplate(pDocTemplate);

    m_pTemplateHex = new CMultiDocTemplate(
        IDR_EX20DTYPE,
        RUNTIME_CLASS(CPoemDoc),
        RUNTIME_CLASS(CChildFrame),
        RUNTIME_CLASS(CHexView));
AddDocTemplate(m_pTemplateHex);//原代码无此处,appended by zyy

但引发断言于docmgr.cpp,line 852。

发现,在
int CEx20dApp::ExitInstance()
{
    delete m_pTemplateHex;//here!!!!!!!!!
    return CWinApp::ExitInstance(); // saves profile settings
}


将此处注释即可
 类似资料: