tuple的作用
C++ 中的 std::tuple
是标准库提供的一个容器,它可以存储任意数量、任意类型的元素。相比于只能存储两个元素的 std::pair
,std::tuple
允许你创建包含更多元素的数据结构,并且这些元素可以是不同类型的。
获取tuple的值 std::get
来访问指定索引位置的元素。索引从0开始。
例如:int intValue = std::get<0>(myTuple); // 访问第一个元素(int 类型)
std::string strValue = std::get<1>(myTuple); // 访问第二个元素(std::string 类型)
double dblValue = std::get<2>(myTuple); // 访问第三个元素(double 类型)
get
#include
#include
#include
using namespace std;
int main() {
// 定义一个 tuple 存储整数、字符串和浮点数
tuple myTuple(42, "hi!", 3.14);
cout<(myTuple)<(myTuple)<(myTuple)< anotherTuple = make_tuple(42, "hi!", 3.14);
cout<(anotherTuple)<(anotherTuple)<(anotherTuple)<
std::size_t size = std::tuple_size_v; // 获取元组大小
using IntType = typename std::tuple_element<0, decltype(myTuple)>::type; // 获取第一个元素的类型
std::tuple copyOfTuple(myTuple); // 拷贝构造
copyOfTuple = anotherTuple; // 赋值操作
if (myTuple == anotherTuple) { // 使用内置的等于运算符进行比较
// ...
}
#include
#include
#include
using namespace std;
int main() {
// 定义一个 tuple 存储整数、字符串和浮点数
tuple myTuple(42, "hi!", 3.14);
cout<(myTuple)<(myTuple)<(myTuple)<(myTuple) = 50;
get<1>(myTuple) = "hello";
get<2>(myTuple) = 3.1415;
cout<(myTuple)<(myTuple)<(myTuple)<