当试图声明一个抽象类时,我似乎无法拥有模板化函数。为什么会这样,我该如何处理?这是我的示例头文件。
// Foo.h
#include "Bar.h"
#include "Baz.h"
class Foo
{
public:
Foo();
virtual Bar<Baz> *getBaz() const = 0;
//snip
};
来自同一行的其他编译器错误包括
syntax error: missing ';' before '<'
最佳答案
我看起来它没有将 Bar 识别为一种类型。
检查你的两个头文件并确保:
1) 定义
2) include guards是正确的,没有被隐藏。
关于c++ - 数据声明中不允许虚拟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5444918/