zoukankan      html  css  js  c++  java
  • array

    一、特性

    概述:固定大小数组,支持快速随机访问,不能添加/删除元素,是C++11标准新增的类型

    1. array对象的大小是固定的

    • array不支持添加/删除元素
    • array不支持改变容器大小的操作(如resize()、reverse()等)

    2. array具有固定大小

    • 与内置数组一样,array的大小也是类型的一部分(故不支持普通容器的构造函数),故定义array对象时,要指出容器大小。
    • 与其他容器不同,一个默认构造的array对象是非空的(因为定义对象时已经给出了array对象的大小)
    • 要对array对象进行列表初始化,那么列表中元素的数目要小于等于该对象的大小(和内置数组一样)

    3. 优于内置数组的地方

    • 可以在赋值时使用列表初始化(内置数组不支持)
    • 可以在array对象之间进行赋值操作(内置数组不支持)

    二、不支持的容器操作

    操作 说明
    array c(b, e) 构造 c,将迭代器 b 和 e 指定的范围内的元素拷贝到 c
    c = {a, b, c ... } 将 c 中的元素替换为列表中的元素(亲测可用)

    array c(n)

    array c(n, t)

    第一个是创建一个大小为n的容器,且内容是值初始化;第二个是创建一个大小为n的容器,且内容是t

    c.assign(args)

    改变容器大小
    c.push_back(args) 改变容器大小
    c.emplace_back(args) 改变容器大小
    c.insert(args) 改变容器大小
    c.pop_back() 改变容器大小
    c.pop_front() 改变容器大小
    c.erase(args) 改变容器大小
    c.clear() 改变容器大小
    c.resize(args) 改变容器大小

    三、限定条件的操作

    操作 说明

    array c1(c2)

    array c1 = c2

    c1初始化为c2的拷贝,要求c1和c2具有相同大小

    array c{a, b, c ... }

    array c={a, b, c ...}

    c 初始化为初始化列表中元素的拷贝,要求列表中元素的数目不能大于 c 的大小
  • 相关阅读:
    Google analytics平均页面停留时间为何是0
    用易语言拦截窗口消息(带例程)
    OS + Linux RHEL / RedHat Enterprise 5 / 6 / 6.3
    Oracle学习教程:动态SQL与游标详解
    图解Oracle数据库(二)
    Oracle数据库中listener.ora sqlnet.ora tnsnames.ora的区别
    正确理解javascript的this关键字
    深入理解Javascript之this关键字
    Oracle中动态SQL详解
    oracle维护常用SQL语句(查看系统表和视图)
  • 原文地址:https://www.cnblogs.com/xzxl/p/7702365.html
Copyright © 2011-2022 走看看