C 数组array与vector的比较计算机等级考试

文章作者 100test 发表时间 2010:01:01 13:00:26
来源 100Test.Com百考试题网


  1. 数组的为数必须用 值大于等于1的常量表达式定义,且只能包含整型字面值常量,枚举常量或者用常量表达式初始化的整型const对象,非const变量以及需要到运行阶段才知道其值的const变量都不能用来定义数组的维度;

  2. 数组的维度必须用 [] 内指定;

  3. 显示初始化数组元素的时候用 {} 括起来,成为初始化列表;不管数组在哪里定义,如果其元素为类类型,则自动调用该类的默认构造函数进行初始化,如果该类没有默认构造函数,则必须为该数组的元素提供显式初始化;在函数体外定义的内置数组,其元素全部初始化为1,在函数体内定义的内置数组,无初始化。

  4. 如果指定了数组维度,初始化的元素个数不能超过维数值;若小于,内置类型则初始化为0,类类型则调用该类的默认构造函数进行初始化。

  5. 数组和vector不同,一个数组不能用另一个数组初始化,也不能将一个数组赋值给另一个数组;

  6. 和vector不同,数组不提供 push——back或者其他的操作在数组中添加新元素,数组一经定义就不允许添加新元素;若需要则要充许分配新的内存空间,再将员数组的元素赋值到新的内存空间。来源:考

  7. 在用下标访问元素时,vector 使用 vector::size_type 作为下标的类型,而数组下标的正确类型则是 size_t;

  编辑特别推荐:

  送给正在学习C 朋友的50条建议

  C 笔试考前练习



相关文章


结合内存分布图分析内存问题计算机等级考试
计算机二级:c 必须明白的基础20条计算机等级考试
如何理解C和C 的复杂类型声明计算机等级考试
C 构造函数的幕后工作计算机等级考试
C 数组array与vector的比较计算机等级考试
C#与C 资源管理方式对阵GC对比RAII计算机等级考试
计算机二级辅导:输入_输出重定向计算机等级考试
四道有趣的单链表面试题计算机等级考试
计算机二级辅导:Windows通用线程类计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛