我只是对容器类和模板有所了解,并且无法弄清楚如何正确实现它们..我所有的问题都非常相似,所以一旦我得到这个排序,我想我应该没问题..
这是我试图实现的 push_back 成员函数的代码:
//data is of type boost::ptr_vector<T>
template <class T>
void P_VContainer<T>::push_back(T* item)
{
data.push_back(item);
}
这就是它在 p_vcontainer.h 中的定义方式:
void push_back(T* item);
这是我从编译器得到的错误:
main.cpp:(.text+0x89f): undefined reference to `P_VContainer<Customer>::push_back(Customer*)'
这就是我在main中实现它的方式:
P_VContainer<Customer> myvector;
Customer *a = new Customer("C004", "Testy McTestington");
myvector.push_back(a);
关于我做错了什么的任何想法?