我有一个根据其参数模板化的函数:
template <class Vector>
void F(Vector& vec);
我想为数值数组添加此函数的特化。我的尝试是这样的:
template <class NumType>
void F(NumType array[]);
我在调用代码中的专用函数时遇到困难。见下文:
void main()
{
double a[] = {0.0, 1.0};
F(a); // This calls the Vector version of the function,
// with Vector = double [3], in my specific case.
}
如果有帮助,我事先知道该函数需要一个长度为 3 的数组才能正常工作。
如何修复我的专用函数声明以便调用该函数的 NumType 数组版本?
谢谢
最佳答案
尝试
template <class NumType, size_t N>
void F(NumType (&array)[N]);
关于c++ - 未调用数组的函数特化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21867006/