array实际上是对C/C++语言中原生数组进行的封装
特点:内存分配在栈(STACK),绝对不会重新分配,随机访问元素
可以用={}进行初始化为0,如果分配5个大小只初始化一个值,后面用0补齐
array swap交换每一个元素,不是交互指针
[]未检查下标是否合法,用at会抛出异常
front和back存放的都是引用
c++相关(STL之容器,stdarray)
以下代码在单线程中看似正确,在多线程中是错误的
c++相关(STL之容器,stdarray)
迭代器相关:
cbegin和cend是从尾部到头部的遍历
c++相关(STL之容器,stdarray)
和C的接口互用:
用data来获取数据会更好一些
c++相关(STL之容器,stdarray)
一些特殊的地方和会抛出异常的情况:
可以用fill对所有元素进行赋值
c++相关(STL之容器,stdarray)
使用array的情况:
1、知道有最大大小
2、需要跟C语言进行交互比如传固定大小数组考虑array可以检查位置,提供丰富接口,效率更高

不好的地方:
生成在栈上内存消耗更大

相关文章:

  • 2022-12-23
  • 2021-09-17
  • 2022-12-23
  • 2022-12-23
  • 2022-01-10
  • 2021-04-03
  • 2021-08-21
  • 2021-12-02
猜你喜欢
  • 2021-04-11
  • 2022-01-06
  • 2021-06-19
  • 2021-09-11
  • 2021-04-26
  • 2022-12-23
  • 2022-01-26
相关资源
相似解决方案