c++ - 从函数返回静态固定大小的数组

标签 c++ arrays

是否可以从函数返回一个固定大小的静态数组?这将是什么语法。我不是在请求 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/

相关文章:

字符数组比较问题

c++ - 巨大的静态数组与函数内的局部数组

javascript - hoek (hapijs) transform() 是否处理数组?

64 位指令中的 C++ 指针

c++ - 使用 OpenCV 作为机器学习库而不是 TensorFlow?

c++ - 玩弄 for arguments

python - 使用 as_strided 分割 numpy 数组

.net - 在没有 .net 支持的 Windows 中创建安装和部署项目

使用 typename 并将 typedef 传递给函数的 C++ 模板

java - 为什么我的迭代器remove()方法没有删除任何东西?