C++ 中容器

容器是容纳特定类型对象的集合,因此容器里面的对象必须是同一类型,而且该类型必须是可拷贝构造和可赋值的,所以包括的类型有内置的基本数据类型和带有公用拷贝构造函数和赋值操作符的类。
关联容器:

提供一个Key(键)实现对元素的随机访问,其特点是key是有序的,及元素是按预定的键顺序(例如升序)插入的。关联容器具有从局域键的集合中快速提取对象的能力,其中集合的大小在运行时可变的。

STL中的关联容器有一下4种。

set(集合):支持唯一键值,并提供对键本身的快速检索;例如set:{学号}

multiset(多重集合):支持可重复键值,并提供对键本身的快速检索;

map支持唯一Key类型的键值,并提供另一个基于键值类型T的快速检索;例如map:{(学号,姓名)};

multimap(多重映射):支持可重复key类型的键值,并提供对另一个基于键的类型T的快速检索。

容器适配器:

提供原容器的一个专用的受限结构。特别是,容器适配器和普通容器的不一样是在于不提供迭代器。在STL中有3种容器适配器:

stack :只支持top()、push()和pop()操作的一种序列容器。

queue

priority_queue:也是一种队列queue,不过其中的每个元素都被给定了一个优先级,用来控制元素到达队首top()的顺序。

访问vector中数据有如下两种方法:

vector::at();

vector::operator[];

例:
vectorv;
v.reserver(10);
for(int i = 0; i < 7; i++)
{
v.push_back(i);
}try{
int iVal1 = v[7];
int iVal2 = v.at(7);
}catch(const exception& e){
cout<<e.what();
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,312评论 19 139
  • 容器的概念所谓STL容器,即是将最常运用的一些数据结构(data structures)实现出来。容器是指容纳特定...
    饭饭H阅读 2,910评论 0 0
  • 前言: 详细介绍: List:元素有放入顺序,元素可重复Map:元素按键值对存储,无放入顺序Set:元素无放入顺序...
    YBshone阅读 12,786评论 0 17
  • STL(标准模板库),是目前C++内置支持的library。它的底层利用了C++类模板和函数模板的机制,由三大部分...
    岁与禾阅读 39,279评论 3 132
  • 一排排竹床横七竖八的摆在防洪提上,男女老少躺在上面或闲聊,或望着天上的星星发呆。微风拂过,白天的闷热被风儿送进了它...
    风爻阅读 1,807评论 0 1