gpt4 book ai didi

c++ - 无法构造基模板类

转载 作者:行者123 更新时间:2023-11-28 04:52:05 27 4
gpt4 key购买 nike

我有以下模板基类:

template <class K>
class Base
{
protected:
Base(int tableSize) : m_tableSize(tableSize) {}
int doBaseWork(const K& data);
private:
int m_tableSize;
};

而这个模板类继承了它:

template <class K>
class Derived : public Base<K>
{
public:
Derived (int tableSize) : Base(tableSize){}
private:
int doDerivedWork();
};

然后在我使用的代码中的某处:

Derived<int> testDerived(10);

用gcc编译时出现如下错误

class 'Derived<K>' does not have any field named 'Base'

我做错了什么?似乎 gcc 认为我正在尝试初始化一个成员,但我只是在尝试初始化基础。

最佳答案

你应该写模板参数

Base<K>(tableSize)

关于c++ - 无法构造基模板类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47961023/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com