永发信息网

VC++中在MFC里创建了CRecordset的子类,但是总是说没有定义

答案:2  悬赏:30  手机版
解决时间 2021-02-05 09:54
  • 提问者网友:像風在裏
  • 2021-02-04 09:08
程序代码:
UpdateData(true);
CUserRecordset m_user;
try
{
if(m_user.IsOpen());
m_user.Close();
m_user.m_strFilter.Format("用户名='%s'and 密码='%s'",m_username,m_userpwd);
m_user.Open(CRecordset::snapshot,NULL,CRecordset::none);
if(m_user.IsEOF())
{m_user.Close();
AfxMessageBox("密码错误,请重试!");
return;
}
else
{m_user.Close();
AfxMessageBox("登陆成功!");
}
}
catch(CException* e)
{
e->ReportError();
return;
}
CDialog::OnOK();
调试结果:
kDlg.cpp
E:\练习调试\12\k\kDlg.cpp(186) : error C2065: 'CUserRecordset' : undeclared identifier
E:\练习调试\12\k\kDlg.cpp(186) : error C2146: syntax error : missing ';' before identifier 'm_user'
E:\练习调试\12\k\kDlg.cpp(186) : error C2065: 'm_user' : undeclared identifier
E:\练习调试\12\k\kDlg.cpp(189) : error C2228: left of '.IsOpen' must have class/struct/union type
E:\练习调试\12\k\kDlg.cpp(190) : warning C4390: ';' : empty controlled statement found; is this the intent?
E:\练习调试\12\k\kDlg.cpp(190) : error C2228: left of '.Close' must have class/struct/union type
E:\练习调试\12\k\kDlg.cpp(191) : error C2228: left of '.m_strFilter' must have class/struct/union type
E:\练习调试\12\k\kDlg.cpp(191) : error C2228: left of '.Format' must have class/struct/union type
E:\练习调试\12\k\kDlg.cpp(192) : error C2228: left of '.Open' must have class/struct/union type
E:\练习调试\12\k\kDlg.cpp(193) : error C2228: left of '.IsEOF' must have class/struct/union type
E:\练习调试\12\k\kDlg.cpp(194) : error C2228: left of '.Close' must have class/struct/union type
E:\练习调试\12\k\kDlg.cpp(199) : error C2228: left of '.Close' must have class/struct/union type
Generating Code...

PS:在StdAfx.h中已经加了#include
最佳答案
  • 五星知识达人网友:夜余生
  • 2021-02-04 09:32
话说你加了这类的头文件到你调用的这个CPP了吗
全部回答
  • 1楼网友:话散在刀尖上
  • 2021-02-04 10:40
这是vc++编译平台的问题,不是你的问题,现在告诉你解决方案 1.打开你的程序在电脑上的文件夹,找到后缀为.clw的文件,删除它 2.重新打开vc++,打开这个程序,编译一下,就ok了 ps:.clw文件记录了这个程序的所有与文件有关的信息,删掉它,重新编译,编译系统就回重新梳理文件,就找到了你丢失的文件
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯