如何使用模板参数编写外部构造函数?

时间:2014-06-07 03:18:39

标签: c++ templates c++11 constructor

假设我有以下结构。我如何为此编写外联构造函数?

template <typename T>
struct foo
{
    template <typename Bar>
    foo(int n, Bar bar);
};

1 个答案:

答案 0 :(得分:7)

您需要两个单独的模板声明:

template <typename T>
template <typename Bar>
foo<T>::foo(int n, Bar bar)
{
    // ...
}