具有非类型参数的函数模板

时间:2017-12-01 11:55:14

标签: c++ c++11 templates

我是C ++模板代码的新手。你能不能请教我以下问题: 如果我想使用函数模板(只有非类型参数)来定义类的成员函数,我是否也需要为该类定义模板。或者换句话说,C ++是否允许用户在untemplated类中定义成员函数模板(只有非类型参数)。例如:

class foo{

template <int vecsize>
void bar(std::array<int, vecsize> vec);
};
谢谢。

1 个答案:

答案 0 :(得分:0)

是的,成员函数模板不需要对父结构进行模板化(当然它可以是模板)。

似乎你想要一个std::array而不是std::vector(因为n.m。提到std :: vector没有大小参数)。

你在课程定义的末尾错过了一个分号