黄渤工作室微博:使用classwizard时 出错

来源:百度文库 编辑:九乡新闻网 时间:2024/04/25 05:31:05
问题解决!如下所示,自己手工添加的映射函数不要写到注释行中间。添加到后面即可
//{{AFX_DATA_INIT(CAssessweightPage)

// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
DDX_Text(pDX, IDC_EDIT1, aifa[0]);
DDX_Text(pDX, IDC_EDIT2, aifa[1]);
DDX_Text(pDX, IDC_EDIT3, aifa[2]);
DDX_Text(pDX, IDC_EDIT4, aifa[3]);
DDX_Text(pDX, IDC_EDIT5, aifa[4]);

MFC中有一种特殊的注释,叫注释宏。注释宏一般由VC自动加入到你的代码中。它是为class wizard服务的,class wizard通过它来定位各种系统自动添加代码的添加位置。若要使用类向导添加成员变量和成员函数,则要保留注释宏;否则,必须手动添加。如果你把它删了,classwizad就不能自动生成代码了 。 你添加消息响应的时候是不是发现源代码里多了些代码??那些代码为什么会在那里出现?为什么不在别的文件里出现?就是因为那里有注释宏它要将代码生成在相应注释宏之间 。 (这个注释是让ClassWizard能够分辨出哪些代码是它生成的,哪些是你自己写的。你自己写的代码要在这个注释之外,这样ClassWizard再修改消息映射的时候就不会管你的代码了。新版本vc(vs)已经没有注释宏了。)