返回参数C++的函数

Function that returns parameters C++

本文关键字:函数 C++ 参数 返回      更新时间:2023-10-16

你好,我有一个小问题,如果你能告诉我如何解决,我会很高兴。所以我有一个函数,它是这样实现的:

int* getMytree()

函数应该返回三个变量。变量被定义为公共变量。

如何返回这三个参数?

除了在struct 中封装三个变量之外

您可以返回std::tuple

std::tuple<int, int, int> getMytree(int id)
{
   // ....
   // a= , b= c=
   return std::make_tuple( a,b,c );
}

然后将std::tie公共变量一起使用,如下所示:

 std::tie( var1, var2, var3 ) = getMytree() ;

很抱歉,由于函数只能返回一个值,因此无法从函数显式返回三个值。但是你可以做两件事

1) 将这三个参数封装在一个结构中,然后生成返回该结构的函数。

struct Book
{
int pages;
std::string name;
std::string author
};
Book myFunc ();  // This example is just for simplicity.

2) 更简单地说,将指针/引用传递给您希望函数更改的三个参数。

void myFunc ( int& page, std::string &name, std::string &author );