在模板函数中使用模板参数

时间:2018-10-24 12:49:08

标签: c++ templates compiler-errors g++

在exportFoo 中出现g ++编译器错误(在'>'标记之前预期主表达式):

class FOO {
    ...
    template<typename DT, typename ST>
    void foo(...);
    ...
};

template<typename DT, typename ST>
void
FOO::doFoo(...)
{
    ...
    size_t memSize = 
        (dynamic_cast< FooImpl< DT > >(obj))->exportFoo< ST >(...);
    ...
}

如果我用有效的已知数据类型替换“ DT”,则不会出现编译器错误。 因此,我想编译器不会将通用数据类型DT和ST解释为对象强制转换为“

”和函数内函数调用的有效参数。通过尝试和错误,我为演员表添加了FooImpl<typename DT>前缀,但是它没有运行。有人有提示吗?

谢谢。

0 个答案:

没有答案