繁体   English   中英

返回参数C ++的函数

[英]Function that returns parameters C++

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

int* getMytree()

该函数应返回三个变量。 变量定义为public。

如何返回三个参数?

除了将三个变量包装在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 );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM