21xrx.com
2024-11-05 12:20:22 Tuesday
登录
文章检索 我的文章 写文章
C++如何实现返回多个值?
2023-07-07 12:17:45 深夜i     --     --
C++ 返回值 多个值 实现

在C++中,函数一般只能返回一个值。但是有时候我们需要从函数中返回多个值,该如何实现呢?

1. 返回结构体或类

我们可以定义一个结构体或类来存储多个返回值,然后将其作为函数的返回值。例如:


struct Point

  int x;

  int y;

;

Point getPoint()

  Point p;

  p.x = 10;

  p.y = 20;

  return p;

在上面的例子中,我们定义了一个包含两个成员变量的结构体Point,然后在getPoint函数中创建了该结构体的一个实例,并将其作为函数的返回值。

2. 通过引用参数返回多个值

我们还可以使用引用参数来返回多个值。例如:


void getValues(int& a, int& b)

  a = 10;

  b = 20;

int main() {

  int x, y;

  getValues(x, y);

  return 0;

}

在上面的例子中,我们定义了一个getValues函数,该函数接受两个引用参数a和b,然后将a赋值为10,b赋值为20。在main函数中,我们通过调用getValues函数来获取返回值。

3. 使用数组或容器返回多个值

最后,我们还可以使用数组或容器来存储多个返回值,并将其作为函数的返回值。例如:


vector<int> getValues() {

  vector<int> values = 10;

  return values;

}

int main() {

  vector<int> nums = getValues();

  return 0;

}

在上面的例子中,我们定义了一个getValues函数,该函数返回一个包含三个整数的vector,然后在main函数中,我们通过调用getValues函数来获取返回值。

总结:

在C++中,有多种方法可以实现从函数中返回多个值,包括使用结构体或类、引用参数、数组或容器等。不同的方法适用于不同的场景,我们需要根据具体的问题来选择合适的方法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复