关于VC2010 error C2228问题
在VC2010里面我建立一个win32项目,然后写了一个头文件
database.h
#include<iostream>
#include<vector>
namespace Records{
public:
........
Employee& getEmployee(int inEmployeeNumber);
protected:
std::vector<Employee> mEmployees;
int mNextEmployeeNumber;
};
}
在相应的cpp文件中有一条语句:
#include"Database.h"
#include<iostream>
#include<stdexcept>
........
Employee& getEmployee(int inEmployeeNumber)
{
for(auto iter=mEmployees.begin();iter!=mEmployees.end();++iter)
{
if(iter->getEmployeeNumber()==inEmployeeNumber)
return *iter;
}
cerr<<"No employee with the number "<<inEmployeeNumber<<endl;
throw exception();
}
调试的时候这个位置出现问题:
error C2065: “mEmployees”: 未声明的标识符
“.begin”的左边必须有类/结构/联合
我已经在头文件里面声明了mEmployees,为什么还会出现这样的问题呢??
[解决办法]
using namespace Records;