一个手写的MFC程序,四个基本类,编译没有错,运行时有断言错误,忽略可以正常运行。但希望能解决

时间:2021-03-02 19:52:54
#include <afxwin.h>
#include <afxext.h>
#include "resource.h"

class MyFrameWnd : public CFrameWnd
{
DECLARE_DYNCREATE(MyFrameWnd)
public :
MyFrameWnd()
{
// Create(0,"ddd");
}
};
IMPLEMENT_DYNCREATE(MyFrameWnd,CFrameWnd)


class mydoc : public CDocument
{
DECLARE_DYNCREATE(mydoc)
public :
CString s;
CPoint point;

mydoc()
{
s="Welcome to SDI";
point.x=250;
point.y=100;
}
//BOOL OnNewDocument()
//{
// return TRUE;
//}
};

IMPLEMENT_DYNCREATE(mydoc,CDocument)

class myview : public CView
{
     DECLARE_DYNCREATE(myview)
public :
void OnDraw(CDC *d)
{
mydoc *b;
b=(mydoc *)m_pDocument;
d->SetTextColor(RGB(0,0,255));
d->TextOut(b->point.x,b->point.y,b->s);
}

void OnLButtonDown(UINT i,CPoint p)
{
mydoc *b;
b=(mydoc *)m_pDocument;
b->point.x=p.x;
b->point.y=p.y;
Invalidate();

}
int OnCreate(LPCREATESTRUCT lpCreateStruct)
        {
// ::AfxMessageBox("OnCreate");
return TRUE;
}

DECLARE_MESSAGE_MAP()
};

IMPLEMENT_DYNCREATE(myview,CView)

BEGIN_MESSAGE_MAP(myview,CView)
//ON_WM_CREATE()
ON_WM_LBUTTONDOWN()
END_MESSAGE_MAP()

class myApp : public CWinApp
{
public :
int InitInstance()
{
CSingleDocTemplate *y;
CRuntimeClass *w,*d,*v;
//d=((CRuntimeClass*)(&mydoc::classmydoc));
d=RUNTIME_CLASS(mydoc);
w=RUNTIME_CLASS(MyFrameWnd);
v=RUNTIME_CLASS(myview);
y=new CSingleDocTemplate(IDR_MENU1,d,w,v);
AddDocTemplate(y);
OnFileNew();
return 1;
}

};


myApp a;

*******************************************************
错误指向docsingl.cpp的215行
VERIFY(strDocName.LoadString(AFX_IDS_UNTITLED));
我想是标题字符串为空,但不知道如何加?

9 个解决方案

#1


不好意思,没看完,主要是看到只有20分(你也太吝啬了!),心情沮丧,看不下去了。

#2


那就在资源里面加进去一个 ID 是 AFX_IDS_UNTITLED 的字符串。

#3


哦不就是分吗

#4


100分,有人会后悔的

#5


在资源里面加进去一个 ID 是 AFX_IDS_UNTITLED 的字符串

#6


注册

#7


版主,怎么不能结贴?

#8


加到100分了。够狠,呵呵。

#9


加了以后又出新问题,
我看书上没加,将代码下载下来运行没问题,
而我每当涉及文件时就有该问题,
可能是其他原因吧
换台计算机试一下

#1


不好意思,没看完,主要是看到只有20分(你也太吝啬了!),心情沮丧,看不下去了。

#2


那就在资源里面加进去一个 ID 是 AFX_IDS_UNTITLED 的字符串。

#3


哦不就是分吗

#4


100分,有人会后悔的

#5


在资源里面加进去一个 ID 是 AFX_IDS_UNTITLED 的字符串

#6


注册

#7


版主,怎么不能结贴?

#8


加到100分了。够狠,呵呵。

#9


加了以后又出新问题,
我看书上没加,将代码下载下来运行没问题,
而我每当涉及文件时就有该问题,
可能是其他原因吧
换台计算机试一下