使用数组参数进行函数专用化
Function specialization with array argument
是否可以将函数专用化为特定的数组类型?
例如,具有模板函数:
template <typename T, size_t size>
void process(T (&arr)[size])
{
// do smth
}
在这种情况下,是否可以对T=uint8_t
进行功能专用化?还是这里唯一合理的解决方案是使用如下所示的重载?
template <size_t size>
void process(uint8_t (&arr)[size])
{
// do smth else
}
感谢您的建议和意见。
无法
部分专用化函数模板,因此您可能必须使用单独的重载。
相关文章:
- 字符串化递归的"std::vector<std::vector<...>>"而不使用部分模板函数专用化
- 使用 C++20 概念模板函数专用化时的依赖项
- 将 c++ 类成员函数专用于模板类
- 使用模板模板参数进行模板定义的函数专用化
- 返回值的简单模板类成员函数专用化
- 已专用类的成员函数专用化
- 部分模板函数专用化enable_if:默认实现
- 使用数组参数进行函数专用化
- 模板函数专用化的内部编译器错误
- 在子类中定义可变参数函数专用化
- 使用模板的构造函数专用化
- 模板函数专用化Enable_if
- 如何将模板构造函数专用化移动到 cpp 文件
- 模板类模板构造函数专用化
- 模板类是否可以用作模板函数专用化的参数
- 未调用数组的函数专用化
- 如何将模板成员函数专用化为另一个模板类
- 模板类的模板函数专用化
- 参数值的自动模板函数专用化
- 如何在类中使用成员函数专用化