C++如何让一个函数拥有多个返回值,并且每一个返回值都是数组
时间: 2024-03-10 08:47:22 浏览: 19
在C++中,一个函数不能直接返回多个数组,但可以通过一些方式来实现类似的效果。
一种常见的方式是使用结构体或类来封装多个数组。例如,可以定义一个结构体来存储需要返回的多个数组,然后在函数中返回该结构体的实例。例如:
```cpp
#include <iostream>
using namespace std;
struct MyResult {
int arr1[3];
int arr2[4];
};
MyResult myFunction() {
MyResult result = {{1, 2, 3}, {4, 5, 6, 7}};
return result;
}
int main() {
MyResult res = myFunction();
for(int i = 0; i < 3; i++) {
cout << res.arr1[i] << " ";
}
cout << endl;
for(int i = 0; i < 4; i++) {
cout << res.arr2[i] << " ";
}
cout << endl;
return 0;
}
```
以上代码中,`MyResult`结构体中包含了两个数组`arr1`和`arr2`,函数`myFunction()`返回一个`MyResult`类型的实例,该实例包含了两个数组的值。在`main()`函数中,我们可以通过访问结构体的成员变量来获取这两个数组。
需要注意的是,以上方法并不是直接返回多个数组,而是将多个数组封装在了一个结构体中。在使用时需要注意访问结构体的成员变量。