STL::array
1,array(仅c++11支持)
固定大小的容器,不能进行扩展和缩小(vector 可以),预分配的大小只是一个参数,在编译时确定真正的大小。
Iterator 有下面几种:
begin: [ )
end: [ )
rbegin: ( ] return reverse iterator to reverse beginning
rend: ( ] return reverse iterator to reverse end
cbegin:
cend: return const_iterator to end (const_iterator 只能读取指向的元素,不能进行修改)
crbegin:
crend:
Capacity 有下面几种:
size: 容器内包含几个元素,在定义时确定的,如 arrar<int,10> 则此时 size 大小为 10 ,因为其中元素已经全被赋值了。

max_size:容器内能包含的最多元素个数,总是和 size 相同。
empty:
Element access:
operator [ ]:下标获取
at:
front: access first element
back: access last element
data: return a pointer to the firsr element in the array object.指针类型取决于容器中元素的类型,如果是 const 类型,则指针也是 const 类型。
// array::data
#include <iostream>
#include <cstring>
#include <array> int main ()
{
const char* cstr = "Test string";
std::array<char,> charray;
std::memcpy (charray.data(),cstr,);
std::cout << charray.data() << '\n'; // Test string
return ;
}
Modifiers:
fill: 把容器内的值全部设置为 val;
array<int,> array1;
array1.fill(); // {5,5,5,5,5}
swap: 交换两个数组的元素;
array<int,> array1,array2;
array1.swap(array2); // 两个数组必须类型相同,大小相同,否则抛出异常
STL::array的更多相关文章
- Huffman树及其编码(STL array实现)
这篇随笔主要是Huffman编码,构建哈夫曼树有各种各样的实现方法,如优先队列,数组构成的树等,但本质都是堆. 这里我用数组来存储数据,以堆的思想来构建一个哈弗曼树,并存入vector中,进而实现哈夫 ...
- C++ STL@ list 应用 (leetcode: Rotate Array)
STL中的list就是一双向链表,可高效地进行插入删除元素. List 是 C++标准程式库 中的一个 类 ,可以简单视之为双向 连结串行 ,以线性列的方式管理物件集合.list 的特色是在集合的任何 ...
- c/c++ 模板与STL小例子系列<一 >自建Array数组
c/c++ 模板与STL小例子系列 自建Array数组 自建的Array数组,提供如下对外接口 方法 功能描述 Array() 无参数构造方法,构造元素个数为模板参数个的数组 Array(int le ...
- STL - 容器 - Array
Array是C++ 11给STL新增加的容器 ArrayTest.cpp #include <array> #include <algorithm> #include < ...
- 侯捷STL学习(七)--深度探索vector&&array
layout: post title: 侯捷STL学习(七) date: 2017-06-13 tag: 侯捷STL --- 第十六节 深度探索vector vector源码剖析 vector内存2倍 ...
- Array的简单使用(Boost和STL通用)
目录 目录 介绍 使用 Boost和STL的区别 介绍 本来这一次是想简单介绍一下Boost里面的协程库的使用的,但是Boost.Coroutine已经被废弃了,而Boost.Coroutine2目前 ...
- Leetcode 26 Remove Duplicates from Sorted Array STL
题目本身是去重 由于我很懒,所以用了STL库里的unique函数来去重,小伙伴们可以考虑自己实现去重的函数,其实并不复杂. class Solution { public: int removeDup ...
- [翻译] C++ STL容器参考手册(第一章 <array>)
返回总册 本章节原文:http://www.cplusplus.com/reference/array/array/ 1. std::array (C++11支持) template < cla ...
- STL容器之Array[转]
转自https://blog.csdn.net/sin_geek/article/details/51067874 作者 Sin_Geek 简介 array在头文件<array> 中定义 ...
随机推荐
- spark基础知识介绍2
dataframe以RDD为基础的分布式数据集,与RDD的区别是,带有Schema元数据,即DF所表示的二维表数据集的每一列带有名称和类型,好处:精简代码:提升执行效率:减少数据读取; 如果不配置sp ...
- chrome也可以整张网页截图,保存完整网页为图片
转自:http://www.webkaka.com/blog/archives/chrome-save-a-webpage.html 关于浏览器截图,一直以为Chrome无能为力,最近发现,原来Chr ...
- Jupyter-1-安装Anaconda3及更改路径
Jupyter Notebook测试Python3,可以将图文.代码有效融合,进行交互式编程,适合学习讲解及方案沟通. 1.下载Anaconda3 可以到官网或是清华大学软件镜像站去下载. 路径:ht ...
- Leetcode 题解 reverse List II
这个题确实太容易错了. 我已经做了2遍了,之前都是套用reverse List 1中的函数. 现在尝试用新方法,在一个函数里完成,结果又错了. 事实证明,永远不要想当然!!!白板编程真的是要求,你对每 ...
- OC copy mutableCopy, 浅拷贝,深拷贝
copy与mutableCopy都是深拷贝,区别是mutableCopy拷贝出的对象是可变的. OC对象基本都是通过指针访问,所以一般情况下,通过对指针的赋值都是浅拷贝,即只是拷贝了一份对象的指针,对 ...
- 2339 3.1.1 Agri-Net 最短网络
Description 农民约翰被选为他们镇的镇长!他其中一个竞选承诺就是在镇上建立起互联网,并连接到所有的农场.当然,他需要你的帮助. 约翰已经给他的农场安排了一条高速的网络线路,他想把这条线路共享 ...
- CAS无锁技术
前言:关于同步,很多人都知道synchronized,Reentrantlock等加锁技术,这种方式也很好理解,是在线程访问的临界区资源上建立一个阻塞机制,需要线程等待 其它线程释放了锁,它才能运行. ...
- FlashDevelop关闭分号自动格式化
菜单Tools-Program Settings-ASCompletion-Helpers-Characters Requiring Whitespace 清空",;*+-=/%<&g ...
- 高质量C++/C编程指南
http://man.chinaunix.net/develop/c&c++/c/c.htm#_Toc520634042 高质量C++/C编程指南 文件状态 [ ] 草稿文件 [√] 正式文 ...
- sass实战演练01 - 外部文件引用和变量
SASS是什么? 目前前端开发中css已经是公认的”前端程序员必须掌握”的知识,最早的css编写都是手工一条条写出来的,工作量大.不利于维护. 而sass的存在使得css开发可以像写代码一样最终生成一 ...