21xrx.com
2025-03-30 08:23:26 Sunday
文章检索 我的文章 写文章
使用C++编程,如何返回多个值?
2023-07-05 14:20:48 深夜i     13     0
C++ 返回值 多个值

在C++编程中,当需要返回多个值时,可以使用以下几种方法。

1. 数组或vector

我们可以使用数组或vector来存储多个值,并将它们作为函数的返回值。例如,我们可以定义一个包含多个元素的数组或vector,在函数内部将需要返回的值存储在这个数组或vector中,然后将其返回。

例如,下面的函数使用数组来返回两个值:

int* getTwoValues() {
  static int values[2];  // 静态数组用于存储多个值
  values[0] = 10;
  values[1] = 20;
  return values;     // 返回数组
}

可以使用以下代码调用该函数:

int* myValues = getTwoValues();
cout << myValues[0] << " " << myValues[1] << endl; // 输出:10 20

也可以使用vector来实现:

#include <vector>
vector<int> getTwoValues() {
  vector<int> values = 20;
  return values;
}
// 调用函数
vector<int> myValues = getTwoValues();
cout << myValues[0] << " " << myValues[1] << endl; // 输出:10 20

2. 结构体或类

另一种常用的方法是使用结构体或类。我们可以定义一个结构体或类来存储多个值,并将其作为函数的返回值。例如,定义一个存储两个整数的结构体:

struct myValues
  int value1;
  int value2;
;
myValues getTwoValues() {
  myValues values = 10;
  return values;
}
// 调用函数
myValues myValues = getTwoValues();
cout << myValues.value1 << " " << myValues.value2 << endl; // 输出:10 20

或者使用类来实现:

class myValues {
public:
  int value1;
  int value2;
  myValues() {}
  myValues(int v1, int v2) : value1(v1), value2(v2) {}
};
myValues getTwoValues() {
  myValues values = myValues(10, 20);
  return values;
}
// 调用函数
myValues myValues = getTwoValues();
cout << myValues.value1 << " " << myValues.value2 << endl; // 输出:10 20

总结

返回多个值可以使用数组、vector、结构体或类等方法。通过这几种方法,你可以方便地在C++程序中处理多个返回值。

  
  

评论区

请求出错了