概述
error C2027: use of undefined type 'C_Recordset'
f:/program files/microsoft visual studio/myprojects/hrsys/adodc.h(14) : see declaration of 'C_Recordset'
F:/Program Files/Microsoft Visual Studio/MyProjects/HrSys/EmpManDlg.cpp(126) : error C2228: left of '.GetEof' must have class/struct/union type
F:/Program Files/Microsoft Visual Studio/MyProjects/HrSys/EmpManDlg.cpp(144) : error C2027: use of undefined type 'C_Recordset'
f:/program files/microsoft visual studio/myprojects/hrsys/adodc.h(14) : see declaration of 'C_Recordset'
F:/Program Files/Microsoft Visual Studio/MyProjects/HrSys/EmpManDlg.cpp(144) : error C2228: left of '.GetEof' must have class/struct/union type
执行 cl.exe 时出错.
在程序中有这样一段代码:
if(m_Adodc.GetRecordset().GetEof())
{
MessageBox("请选择要修改的记录!");
return;
}
编译时救护出现这个问题,解决方法是添加头文件 #include "_recordset.h"
rror C2039: 'GetItem' : is not a member of 'CDataGrid'
f:/program files/microsoft visual studio/myprojects/hrsys/datagrid.h(24) : see declaration of 'CDataGrid'
F:/Program Files/Microsoft Visual Studio/MyProjects/HrSys/datagrid.cpp(855) : error C2065: 'GetColumns' : undeclared identifier
F:/Program Files/Microsoft Visual Studio/MyProjects/HrSys/datagrid.cpp(855) : error C2440: 'initializing' : cannot convert from 'int' to 'class CColumns'
No constructor could take the source type, or constructor overload resolution was ambiguous
执行 cl.exe 时出错.
出现上面的情况原因是类中并不包含GetItem这个函数,需要手动添加,我当初遇到这个问题时在我拿过上找了很久都么有说清楚,
解决方法如下:
添加GetItem函数,函数代码为
CString CDataGrid::GetItem(int ColNum)
{
CColumns cols=GetColumns();
VARIANT v_ColNum,v_Value;
v_ColNum.vt=VT_I2;
v_ColNum.iVal=ColNum;
CColumn col=cols.GetItem(v_ColNum);
v_Value=col.GetValue();
return v_Value.bstrVal;
}
再编译据不会有错了,这个东西是我在书上抄下来的
最后
以上就是听话砖头为你收集整理的vc++数据库编程中遇到的问题的全部内容,希望文章能够帮你解决vc++数据库编程中遇到的问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复