关于vc++6.0的一个小问题。
新手初来乍到,先给各位大虾问好。
本人因毕业设计需要设计一个CAD软件界面,用vc++ 6.0。初步学习时教程中有这么一段话
“打开文档类头文件,然后加入一个直线类CLine,是CObject类派生的。
然后写入 CLine(){}
CLine(POINT BeginP,POINT EndP)//直线构造函数
{
s_BeginP.x=BeginP.x;
s_BeginP.y=BeginP.y;
s_EndP.x=EndP.x;
s_EndP.y=EndP.y;
}
void Draw(CDC *pDC);//绘制直线 ”
在文档类头文件XXXDoc.h中应该就会有如下一段程序:
class CLine:public CObject
{
protected:
POINT s_BeginP,s_EndP;//记录直线的开始点和结束点
public:
//必须的不带参数的构造函数
CLine(){}
CLine(POINT BeginP,POINT EndP)//直线构造函数
{
s_BeginP.x=BeginP.x;
s_BeginP.y=BeginP.y;
s_EndP.x=EndP.x;
s_EndP.y=EndP.y;
}
void Draw(CDC *pDC);//绘制直线
};
可在实际操作中却无法实现,哪位老兄知道实现这段程序应该怎样操作VC++6.0
我找到这样一个例子实现CMyWnd:
用Class Wizard 生成CMyWnd类,其基类为CWnd(在Base Class 中选为generic CWnd)。
class CMyWnd : public CWnd
{
public:
CMyWnd();
static LPCSTR lpszClassName; //注册类名
public:
BOOL Create();
public:
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CMyWnd)
protected:
virtual void PostNcDestroy();
……
这个 class CMyWnd : public CWnd 和第一个 class CLine:public CObject 是一样方式实现的吗?那 CObject 在Base Class 中应选哪个?