1、vertor和数组的区别:

数组的长度固定、而且程序是无法知道一个给定数组的长度,数组没有获取器容量大小的size操作,也不提供puch_back操作在其中自动添加元素

2、数组定义中的类型可以示内置类型或者类类型。除引用之外数组元素的类型还可以是人与的复合类型。没有所有元素都是引用的数组。

3、const类型在静态编译时,其值就存在。其他的类型 Eg:  int 类型 只有在运行时才会存在

4、在函数体外定义的 内置数组,其元素初始化为0.

在函数体内定义的 内置数组,其元素无初始化

5、不管数组在哪里定义,如果其元素为类类型则自动调用该类的默认构造函数进行初始化。如果类没有默认构造函数,则必须要为该数组的元素提供显示的初始化

6、显示初始化不需要指定数组的为数值

eg: int a[] ={0、2、3};

7、在标准功能上,不允许用数组赋值,一些非标准可以,但是那样将无法跨平台使用

8、如果必须在数组中添加新元素,程序员就必须自己管理内存。要求系统重新分配一个新的内存用于存放更多的数组,然后把原数组的所有元素复制到新分配的内存空间中

9、数组越界要通过自己不断的测试,即使通过编译测试的程序也会出现致命的错误

10、导致安全问题的最常见原因是所谓的“缓冲区溢出”。当我们在编程时没有检查下标,并且引用了越出数组或其他类似数据结构边界的元素时,就会导致类似的错误

11、有效指针的三种状态:

(1)保存一个特定对象的地址

(2)指向某个对象后面的另一个对象

(3)或者是0值

(为初始化的指针是无效的 )

12、void*指针指支持几种有限的操作

(1)  与另一个指针进行比较

(2)向函数传递void*指针

(3)从刚函数返回void*指针

13、引用和指针的区别

(1)引用总是指向某个对象,第一引用时没有初始化是错误的

(2)给引用赋值修改的是该引用所关联对象的值而并不是使引用与另一个对象关联

(3)引用已经初始化,就始终指向同一个特定的对象

14、指针的算术操作只有在原指针和计算出来的新指针都指向同一ugeshuzu的元素,或指向该数组存储空间的下一单元时才是合法的。如果指针指向以对象。我们还可以在指针上加1从而获取指向相关的下一个对象的指针

15、只要指针指向数组元素就可以对它进行下标操作

16、C++允许计算数组或对象的超出末端的地址,但不允许对比地址进行解引用操作,而计算数组炒出末端位置之后或数组首地址之前的地址都是不合法的

17、C++语言强制要求指向const对象的指针也必须具有const特性

18、不准使用void*指针,保存const对象,而必须使用constvoid*类型的指针保存const对象的地址

19、不能使用指向const对象的指针修改基础对象,然后如果该指针指向的是一个非const对象,可用其他方法修改其所指的对象

20、const限定符可以放在类型的前面,也可以放在类型的后面。

21、如果指针Cp所指向的字符数组没有Null结束符。则此循环将会失效。这时,循环会从Cp指向的位置开始读数,直到遇内存中某处Null结束符为止

22、数组类型变量三个重要限制

(1) 数组长度固定不变

(2)在编译时必须知道其长度

(3)数组只在定义它的块语句内存中

23、每一个程序在执行过程是都占用一块可用的内存空间,用于存放动态分配Udell对象,此内存空间称为程序的自由存储区域堆

24、动态数组长度后面的一对空圆括号,多数组元素做值初始化

25、对于动态分配的数组,其元素只能初始化为元素类型的默认值,而不能像数组变量一样,用初始化列表为数组元素提供各不相同的初值。

C++Primer 一的更多相关文章

  1. C Primer Plus 学习体会

    本月刚刚开始学习<C primer plus>,之前课上草草学过一遍,讲到指针就结束了.现在重新开始看感觉难度不大只是刚开始接触有些语言细节比较琐碎.学习这一周的体会如下: 诸多前辈推荐的 ...

  2. C++ Primer Plus 第六版笔记

    C++ Primer Plus 第六版笔记 关于对象声明的思考 转自:http://www.cnblogs.com/weiqubo/archive/2009/11/02/1930042.html C+ ...

  3. 《3D Math Primer for Graphics and Game Development》读书笔记2

    <3D Math Primer for Graphics and Game Development>读书笔记2 上一篇得到了"矩阵等价于变换后的基向量"这一结论. 本篇 ...

  4. 《3D Math Primer for Graphics and Game Development》读书笔记1

    <3D Math Primer for Graphics and Game Development>读书笔记1 本文是<3D Math Primer for Graphics and ...

  5. 再读《C++ Primer》——变量和基本类型

    刚上大学那时,几个室友一块买了本<C++ Primer>第4版,看了一遍后就没怎么碰了,偶尔拿出来翻翻,当作工具书使用.后来知道有第5版了,一直觉得内容差不多吧.直到最近,再读其中的一些内 ...

  6. C Primer Plus_第6章_循环_编程练习

    1.题略 #include int main(void) { int i; char ch[26]; for (i = 97; i <= (97+25); i++) { ch[i-97] = i ...

  7. C Primer Plus_第5章_运算符、表达式和语句_编程练习

    Practice 1. 输入分钟输出对应的小时和分钟. #include #define MIN_PER_H 60 int main(void) { int mins, hours, minutes; ...

  8. C++Primer 5th 练习 12.19

    这阵子真是太忙了, 连续做了四个课设. 当然这并不能作为好久没写博客的借口, 没写博客的主要原因只有一个: 懒. 最近又开始回顾C++的语法与特性(据说C++就是一门需要反复回顾的语言),以及学习C+ ...

  9. [翻译]Primer on Cognitive Computing(认知计算入门)

    Source Kelly J., Primer on Cognitive Computing 20150216. 侵删,联系方式:zhoujiagen\@gmail.com. 按A candidate ...

  10. c++ Primer 第四版 第一阶段 const总结

    由于期末值考一门软件安全,所以果断看起c++Primer ,因为之前看谭浩强的c++感觉没什么用啊.所以这本书每阶段做个总结!!! 1.Const限定符作用: 在for循环中上限应该用一个固定变量来设 ...

随机推荐

  1. NotePad++常用快捷键。——Arvin

    Ctrl+单键 Ctrl+C 复制 Ctrl+X 剪切 Ctrl+V 粘贴 Ctrl+Z 撤消 Ctrl+Y 恢复 Ctrl+A 全选 Ctrl+F 键查找对话框启动 Ctrl+H 查找/替换对话框 ...

  2. C++编程小知识随手记

    C++编程小知识点: (1)queue和vector类型: 加入元素 : queue是queue.push(),vector是vector.push_back(), 删除元素: queue是queue ...

  3. Handler+ExecutorService(线程池)+MessageQueue模式+缓存模式

    android线程池的理解,晚上在家无事 预习了一下android异步加载的例子,也学习到了一个很重要的东东 那就是线程池+缓存  下面看他们的理解.[size=1.8em]Handler+Runna ...

  4. Java 执行系统命令

    在Java中执行系统命令,主要是使用ProcessBuilder和Runtime.getRuntime().exec().而在这里主要是介绍两种方法的使用. 使用情景是在linux系统中,使用menc ...

  5. 记录centos6.8安装Oracle10.2.0.1过程中的错误解决

    [root@hadoop01 database]# ./runInstaller ./runInstaller: /opt/database/install/.oui: /lib/ld-linux.s ...

  6. 禁止手机页面中A标签长按弹出路径框

    //禁止手机页面中A标签长按弹出路径框    window.onload=function(){        document.documentElement.style.webkitTouchCa ...

  7. jQuery 日常工作集中问题

    1.siblings()方法:获得匹配元素中每个元素的同胞(除了自己外的其他同级元素) 导航栏选择效果 点击“华东地区”,其他同级元素灰色背景以及下拉菜单消失,当前元素有灰色背景以及下拉菜单.再次点击 ...

  8. form表单转Json提交方法

    先将表单数值转换成数组存储,存储成的格式为[{"name":"","value":""},.....}] var for ...

  9. CSS创造三角形的原理

    其实就是利用了div各方向border的接驳点产生的斜线的特点,知道原理后就不觉得有多不可思议了.. .triangle_up { height: 0px; width: 0px; border-bo ...

  10. Android的常用adb命令

    第一部分:1. ubuntu下配置环境anroid变量:在终端执行 sudo gedit /etc/profile 打开文本编辑器,在最后追加#setandroid environment2. 运行E ...