嗯,怎么说数据结构果然很玄妙。按照能不能存储多行元素大致分为两类。
不能存好几行的数据包括pair,int,float,double,char,struct;
能存好几行的:map,unordered_map,list,vector,set,string,array。
1. pair
“pair” 是 C++ 标准库中的一个模板类,它用于存储两个不同类型的对象作为一对。它并不能直接存储多行数据,因为它是一个固定大小的结构,只能容纳两个元素。
在C++中,std::pair
是一个用于存储两个元素的模板类,这两个元素可以是不同的类型。它经常在C++程序设计中使用,尤其是在一些STL容器和算法中。
以下是一些基本的std::pair
操作:
1.1 创建pair:
std::pair<int, std::string> p(42, "Hello World");
在这个例子中,我们创建了一个pair,其中第一个元素是整数42,第二个元素是字符串"Hello World"。
1.2 访问pair的元素:
std::cout << "First element: " << p.first << std::endl;
std::cout << "Second element: " << p.second << std::endl;
我们可以使用first
和second
成员来访问pair的元素。
如果是pair套pair的情况:
在C++中,可以使用嵌套的std::pair
来创建更复杂的数据结构。要访问嵌套的std::pair
中的元素,可以使用.
或->
运算符进行链式访问。
例如,假设有一个嵌套的std::pair
如下:
std::pair<int, std::pair<std::string, double>> myPair(42, std::make_pair(