按照书上教程在MFC中建立了一个对话框应用程序CMYDB0307,用ADO方法访问数据库,该数据库有6字段.并为其定义了CEmployees 类,为各字段定义了int Emp_id;CString Emp_name;CString Sex;CString Title;float Wage;int Dep_id;然后在应用程序窗口中定义了添加按钮, 并让它弹出一个增加记录对话框AddRecordEditDlg,对话框中定义了CComboBox m_Sex;CString m_EmpName;
CString m_Title;float m_Wage;CString strSex;主窗口添加按钮中的代码如下:
void CMYDB0307Dlg::OnAddButton() 
{
// TODO: Add your control notification handler code here
AddRecordEditDlg dlg;
dlg.cEmpId=""; //
dlg.strSex="男";
if(dlg.DoModal()==IDOK)
{
 RefreshData();
}

}
运行程序报错error C2065: 'cEmpId' : undeclared identifier现在问题是我没有定义过cEmpId这个变量,请问它是哪来的,有什么作用?谢谢!

解决方案 »

  1.   

    dlg.cEmpId
    你不是写在这吗?
    这没定义
    编译出错,不是运行出错
      

  2.   

    原来你是那个意思
    那就查找cEmpId
    没有的话,把这句删了
    通常他会在AddRecordEditDlg.h中
      

  3.   

    这个变量应该跟 int Emp_id是同一个东西,你把变量名称统一一下
      

  4.   

    dlg.cEmpId="";   // 在对话框中添加一个编辑框,绑定CString类型变量为cEmpID, 建议改成m_strEmpID另外,变量命名最好加小写类型前缀,例如:
    CComboBox   m_Sex; ->CComboBox m_cbSex; //表示这是一个控件对象
    CString   strSex; ->CString   m_strSex; //m_表示是成员变量代码一定要规范,否则维护起来比较麻烦
      

  5.   

    cEmpId没定义,给对话框加上这个变量