我是C ++模板代码的新手。你能不能请教我以下问题: 如果我想使用函数模板(只有非类型参数)来定义类的成员函数,我是否也需要为该类定义模板。或者换句话说,C ++是否允许用户在untemplated类中定义成员函数模板(只有非类型参数)。例如:
class foo{
template <int vecsize>
void bar(std::array<int, vecsize> vec);
};
谢谢。
答案 0 :(得分:0)
是的,成员函数模板不需要对父结构进行模板化(当然它可以是模板)。
似乎你想要一个std::array
而不是std::vector
(因为n.m。提到std :: vector没有大小参数)。
你在课程定义的末尾错过了一个分号