c++ - 如何在 C++ 中按值从函数返回数组
问题描述
我知道按值而不是指针返回数组效率低下。但是,我的 CS 类 final 要求函数返回一个 5 位 1D 数组作为值。因此,我不能通过指针返回数组。我也无法拥有任何全局变量。
我努力了
float FunctionName(){
float myVar[5];
//process data
return myVar;
}
我也试过
float[] FunctionName(){
float myVar[5];
//process data
return myVar;
}
我什至尝试用
float FunctionName(float myVar[5]) {
//process data
return myVar;
}
我读过这是不可能的,但我猜这真的很奇怪或很难做到。我认为枚举类型可能是可能的,但我不确定如何设置它。
解决方案
您不能按值返回数组。但是,您可以使用 来做到这一点std::array
,它是数组的包装器:
#include <array>
std::array<float, 5> FunctionName() {
std::array<float, 5> data;
//process data
return data;
}
推荐阅读
- powerbi - 无聚合的 Pivot-Power BI
- vulkan - 在 GLSL 中使用多个描述符集而没有明确的“集合”存储?
- c# - 如何在 C# 中获取 JITed 代码的地址?
- java - 如何使用Java将文本附加到一个目录中的多个文件
- java - Socket 到 Socket 通信,Server 仅充当中间人
- ruby-on-rails - 如何在activerecord中切换两个表
- javascript - 创建一个接收整数并以螺旋格式返回 NxN 二维数组的函数
- maven - Flyway maven插件设置
- javascript - 为什么需要@babel-core
- c# - 如何在没有附加类的情况下解析 json?