error: 'template<class Key, class T> class QCache' used without template parameters if(QCache::t_cache(key))
时间: 2024-02-17 08:05:30 浏览: 130
这个错误的原因与之前提到的相同,使用QCache时没有提供模板参数。如果你想访问t_cache对象,需要将QCache模板类的模板参数提供出来,例如:
```c++
if (QCache<QString, QVector<T>>::t_cache(key))
```
这里,QCache模板类的第一个模板参数是QString,表示存储元素的键类型;第二个模板参数是QVector<T>,表示存储元素的值类型。其中,QVector<T>是一个模板类,需要在使用时提供模板参数T,这里我们假设T是一个类型参数。这样在代码中使用QCache的静态变量t_cache时,就需要将模板参数提供出来。
相关问题
error: 'template<class Key, class T> class QCache' used without template parameters
这个错误通常是因为使用了模板类QCache时没有提供模板参数。QCache是Qt框架中的一个模板类,需要提供模板参数才能使用。例如,如果要定义一个QCache对象来存储QString类型的键和int类型的值,你需要这样写:
```
QCache<QString, int> cache;
```
这里的QString和int就是模板参数,分别代表QCache中键和值的类型。如果没有提供模板参数,就会出现类似'QCache' used without template parameters的编译错误。
error: 'template<class Key, class T> class QCache' used without template parameters,怎么修改
你需要在使用QCache类的地方提供模板参数,例如:
```c++
QCache<QString, int> myCache;
```
这里的`QString`和`int`就是模板参数,分别代表了QCache类中的键和值的类型。如果没有提供模板参数,就会出现编译错误`'template<class Key, class T> class QCache' used without template parameters`。
阅读全文