[英]problems using a class template
我创建了一个包含地图的模板。 当我尝试创建该模板的实例时,遇到构造函数和析构函数的链接问题。 另外,当我尝试在main中创建实例时,它会在调试时跳过该行,甚至不在本地列表中显示它。 它不会编译“ Database db;” 除非我在数据库之后添加“()”。 (这就是我尝试在main中启动实例的方式)。
编码:
H:
template <class keyVal,class searchVal, class T>
class DataBase
{
private:
map<keyVal,pair<searchVal,T*>*> DB;
public :
DataBase();
virtual ~DataBase();
};
CPP:
#include "DataBase.h"
template <class keyVal,class searchVal, class T>
DataBase<keyVal,searchVal,T>::DataBase()
{}
template <class keyVal,class searchVal, class T>
DataBase<keyVal,searchVal,T>::~DataBase()
{}
谢谢
直接在头文件中添加模板类(和函数)的实现:
template <class keyVal,class searchVal, class T>
class DataBase
{
private:
map<keyVal,pair<searchVal,T*>*> DB;
public :
DataBase() {};
virtual ~DataBase() {};
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.