21xrx.com
2024-11-10 00:20:34 Sunday
登录
文章检索 我的文章 写文章
如何在C++函数中返回两个值
2023-07-09 14:42:37 深夜i     --     --
C++ 函数 返回 两个值

在C++中,有时候我们需要在一个函数中返回多个值,而不仅仅是一个值。这时候,我们可以采用以下几种方法。

1. 使用结构体来返回多个值

在C++中,我们可以使用结构体来封装多个值,然后将结构体作为函数的返回值。例如:


struct Point

  int x;

  int y;

;

Point getCoords()

  Point p;

  p.x = 1;

  p.y = 2;

  return p;

int main() {

  Point p = getCoords();

  std::cout << p.x << " " << p.y << std::endl; //输出1 2

  return 0;

}

2. 使用指针参数传递多个值

我们可以在函数中使用指针参数来传递多个值,然后在函数外部解引用这些指针获取返回值。例如:


void getCoords(int* x, int* y) {

  *x = 1;

  *y = 2;

}

int main() {

  int x, y;

  getCoords(&x, &y);

  std::cout << x << " " << y << std::endl; //输出1 2

  return 0;

}

3. 使用引用参数返回多个值

与指针参数类似,我们也可以使用引用参数来返回多个值。但区别在于,引用参数不需要像指针参数一样使用解引用符号。例如:


void getCoords(int& x, int& y)

  *x = 1;

  *y = 2;

int main() {

  int x, y;

  getCoords(x, y);

  std::cout << x << " " << y << std::endl; //输出1 2

  return 0;

}

以上三种方法都可以用来在C++函数中返回多个值,具体哪种方法更适合取决于开发者的实际需求和喜好。

  
  

评论区

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