21xrx.com
2025-07-10 15:29:02 Thursday
文章检索 我的文章 写文章
C++如何返回两个值的函数
2023-07-02 21:43:55 深夜i     17     0
C++ 函数 返回 两个值

在很多情况下,我们需要一个函数返回不止一个值。在C++中,我们可以使用以下几种方法实现这个功能。

1. 使用结构体

结构体是一种自定义的数据类型,它可以包含多个不同类型的数据成员。我们可以定义一个包含两个数据成员的结构体,然后将它们作为函数的返回值。例如:

struct Result
  int a;
  int b;
;
Result func()
  Result result;
  result.a = 1;
  result.b = 2;
  return result;
int main() {
  Result res = func();
  cout << res.a << " " << res.b << endl;
  return 0;
}

2. 使用数组

另一种方法是使用数组来存储多个返回值。我们可以定义一个数组,将需要返回的值存储在数组中,然后将数组作为函数的返回值。例如:

int* func() {
  static int arr[2];
  arr[0] = 1;
  arr[1] = 2;
  return arr;
}
int main() {
  int* res = func();
  cout << res[0] << " " << res[1] << endl;
  return 0;
}

3. 使用引用参数

最后一种方法是使用引用参数,即将需要返回的值作为函数的参数,在函数中直接修改这些值。例如:

void func(int& a, int& b)
  a = 1;
  b = 2;
int main() {
  int x, y;
  func(x, y);
  cout << x << " " << y << endl;
  return 0;
}

以上三种方法都可以实现函数返回多个值的功能,我们可以根据实际情况选择适合的方法。

  
  

评论区