C++ tuple 的使用

tuple的作用

C++ 中的 std::tuple 是标准库提供的一个容器,它可以存储任意数量、任意类型的元素。相比于只能存储两个元素的 std::pairstd::tuple 允许你创建包含更多元素的数据结构,并且这些元素可以是不同类型的。

获取tuple的值 std::get(myTuple) 来访问指定索引位置的元素。索引从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 是第几个元素,注意第一个元素是从0开始的

tuple 写一个demo 看下他的使用

#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) { // 使用内置的等于运算符进行比较
    // ...
}

修改tuple的元素

#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)<

你可能感兴趣的:(C++,c++,开发语言)