zoukankan      html  css  js  c++  java
  • learn c++(vector and array)

    数组的替代品:模板类vector、模板类array

    模板类vector:

      1.  模板类vector是一种动态数组,可在运行阶段根据需要设置vector对象的长度,自动使用new和delete管理内存

      2.  <1>要使用vector对象,必须包含头文件vector;<2>vector包含在名称空间std中;<3>vector类使用不同的语法来指出它存储的数据类型:vector<typeName> vectorname;

          <4>vector类使用不同的语法来指定元素数:vector<typeName> vectorname(n_elem);  其中参数n_elem可以使整型常量也可是整型变量

      3.  vector类对象在插入或添加值时自动调整长度,所以可以将其初始长度设置为0,但如果要手动调整长度,则需要使用vector包中的各种方法

      4.  vector类的功能比数组强大,但是效率相对较低,而数组相较之而言则在安全性方面不如前者

      5.  可以用标准数组表示法,即下标索引,来访问vector对象的各个元素

      6.  vector对象存储在堆中

      7.  可使用成员函数at()检查索引是否非法

    模板类array:

      1.  <1>要使用array对象,必须包含头文件array;<2>位于名称空间std;<3>array对象长度固定,使用栈存储;<4>相比于数组,更方便,更安全

      2.  array对象创建语法:array<typeName, n_elem> arr; 其中,n_elem不能是变量

      3. 可以用标准数组表示法,即下标索引,来访问array对象的各个元素

      4.  可以直接将一个array对象赋值给另一个array对象;数组则只能逐元素复制数据

      5.  可使用成员函数at()检查索引是否非法,而数组则无此检查索引是否非法的功能,所以数组相比于vector和array是不安全的

  • 相关阅读:
    关于协同过滤技术
    一些数据上的概念
    Simple HBase query bridge
    leveraging
    Ajax.NET
    怎样实现给DEDE的栏目增加栏目图片(2)
    怎样实现给DEDE的栏目增加栏目图片(1)
    更改dede网站地图模板样式
    sublime如何实现函数折叠
    一步一步CCNA之五:交换机vlan配置
  • 原文地址:https://www.cnblogs.com/OoycyoO/p/8871733.html
Copyright © 2011-2022 走看看