是否可以从函数返回一个固定大小的静态数组?这将是什么语法。我不是在请求 std::array
,也不是在请求 T*
,我特别请求 T arr[N]
形式的数组.例如,可以通过以下语法将这样的数组作为函数中的参数:
template<typename T, auto N>
void func(T (&arr)[N])
{
}
最佳答案
函数不能按值返回数组。您已经观察到函数可以通过引用 将数组作为参数;类似地,函数可以通过引用 返回数组。为此,最简单的方法是使用尾随返回类型语法:
auto func() -> T (&)[N];
但是数组既不能传值也不能传值。
关于c++ - 从函数返回静态固定大小的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56910472/