C ++“延迟”模板参数

时间:2010-04-28 05:08:01

标签: c++ templates

是否有直接的方法来执行以下操作:

template < class >
struct f {};

template < class F >
void function() {
    F<int>();  //for example
    // ? F template <int>();
}

function < f >();

我通过在模板结构周围使用额外的类来解决方法。 我想知道是否可以直接这样做。

由于

1 个答案:

答案 0 :(得分:7)

模板模板参数的正确语法如下

template < class > struct f {}; 

template < template <class> class F > 
void function() { 
    F<int>();  //for example 
} 

...     
function < f >()