只是代码示例:
template <typename E> class TypeWrapper
{
protected:
template <typename O> void m_add_object()
{
}
};
template <class T> class PyType: public TypeWrapper<T>
{
void call()
{
TypeWrapper<T>::m_add_object<PyType<T> >();
}
};
它是大型项目的一部分,尽可能小。使用和需要的所有模板。
这段代码总是因为原因无法编译:
错误:在'&gt;'标记之前预期的primary-expression
我尝试完全限定所有成员并使用 typename 关键字。它没有帮助。 我认为有不可见的循环依赖或编译错误?
我的环境:gcc版本4.8.2(Ubuntu 4.8.2-19ubuntu1); Ubuntu 14.04.1 LTS