📜  返回两个参数的 cpp 函数 - C++ (1)

📅  最后修改于: 2023-12-03 15:12:19.595000             🧑  作者: Mango

返回两个参数的 C++ 函数

在 C++ 中,函数可以返回一个值,但是如果需要返回多个值怎么办呢?这时可以使用返回两个参数的函数。

方法一:通过引用传递参数

可以使用引用传递参数的方式,使得函数返回两个参数。例如:

void twoIntegers(int& a, int& b) {
  a = 1;
  b = 2;
}

int main() {
  int x, y;
  twoIntegers(x, y);
  std::cout << "x = " << x << ", y = " << y << std::endl;
  return 0;
}

以上代码中,函数twoIntegers返回了两个值,分别是ab。在main函数中,我们通过引用将这两个返回值赋给xy。最后打印出xy的值。

这种方法的好处是可以同时返回多个值,但是容易造成参数的混乱,需要小心使用。

方法二:返回一个结构体

另一种方法是返回一个结构体,这个结构体包含了需要返回的多个值。例如:

struct TwoInts {
  int a;
  int b;
};

TwoInts twoIntegers() {
  TwoInts res;
  res.a = 1;
  res.b = 2;
  return res;
}

int main() {
  TwoInts res = twoIntegers();
  std::cout << "a = " << res.a << ", b = " << res.b << std::endl;
  return 0;
}

以上代码中,函数twoIntegers返回了一个包含两个值的结构体TwoInts。在main函数中,我们通过一个结构体变量res接受这两个值并打印。

这种方法需要定义结构体,但是在传递参数方面相对更加清晰易懂。

综上所述,以上两种方法都可以返回两个参数的函数,需要根据实际情况选择。