处理多返回值
元组
#include <iostream>
#include <tuple>
#include <string>
std::tuple<std::string, int> GetInfo()
{
return{ "ys",27 };
}
int main()
{
auto p1 = GetInfo();
std::string s1 = std::get<0>(p1);
int a1 = std::get<1>(p1);
}
第二种方式
#include <iostream>
#include <tuple>
#include <string>
std::tuple<std::string, int> GetInfo()
{
return{ "ys",27 };
}
int main()
{
std::string s2;
int a2;
std::tie(s2, a2) = GetInfo();
std::cout << s2 << ":" << a2 << std::endl;
std::cin.get();
}
c++17结构化绑定
#include <iostream>
#include <tuple>
#include <string>
std::tuple<std::string, int> GetInfo()
{
return{ "ys",27 };
}
int main()
{
auto [s3, a3] = GetInfo();
std::cout << s3 << ":" << a3 << std::endl;
std::cin.get();
}
//结果
ys:17