我正在做这个项目来管理银行,我正在尝试实现代码来编辑员工对象。
template <class val>
void Bank::updateVector(unsigned int ID, vector<val*> upVector, val* upValue)
{
deleteByID(ID, upVector);
upVector.push_back(upValue);
}
这是对函数的调用:
employee *new_employee= new employee(name,birthDate,address,postalCode, NIF, BI, phone, salary, post, qualifications, id);
updateVector(id,employees,new_employee);
我收到一个未定义的引用错误:
undefined reference to `void Bank::updateVector<employee>(unsigned int, std::vector<employee*, std::allocator<employee*> >, employee*)'
为什么会这样?
感谢您的帮助
答案 0 :(得分:1)
也许你已经这样做了,但是要确保,这应该放在定义你的类的标题中。
答案 1 :(得分:0)
我对此不太确定 但我认为这种情况正在发生,因为您创建了updateVector作为模板,但未指定类类型
我很确定它会是
updateVector <employee> (id, employees, new_employee);
对不起,如果我弄错了。