[英]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.