为什么这个模板不会编译?
template <class K, class V = Referenced>
class Cache
{
public:
Cache();
...
};
template <class K, class V>
Cache::Cache() <==== location of compiler error (see below)
{
...
}
错误 error: 'template<class K, class V> class Cache' used without template parameters
答案 0 :(得分:6)
您需要指定模板参数:
template <class K, class V>
Cache<K, V>::Cache()
{
...
}
答案 1 :(得分:4)
template <class K, class V>
Cache<K,V>::Cache() // Specify the template parameters
{
//...
}
答案 2 :(得分:4)
试试这个:
template <class K, class V>
Cache<K, V>::Cache()
{
...
}
注意类名后面的模板参数。