《写给大家看的C++书》读书笔记——更新中

来源:互联网 发布:马尔科夫转移矩阵计算 编辑:程序博客网 时间:2024/05/20 10:56

第1章《创建基本的程序》
1,C++中如果没有return语句,默认返回0.
2,编译器的基本用途是把C++源代码转换为一个可执行程序。它可以获取高级指令并生成计算机能够理解的低级机器代码。
3,预处理指令是一些供编译器使用的特殊指令代码,它们不是C或C++代码。它们并不精确遵守C++的语法规则,这些指令通常放在文件的最开始,出现在任何函数之前。

 

第2章《简单的变量和数据类型》
1,从本质上讲,所有的程序都在做同样的事情——处理数据,而程序员的工作就是告诉计算机对什么样的数据进行怎样的处理。
2,要想使用变量,必须先对它进行声明——给它起一个专用的名字并为它指定一种特定的数据类型。
3,因为char类型本质上市一个整数,所以可以对它进行算术运算,char类型只占用一个字节,可以用来处理小整数。
4,在C语言里,可以先声明一个常量,再在后面的程序里对它赋值。但这在C++程序中是不允许的,必须在声明一个常量的同时对它进行初始化。如:const int QUANTITY = 7;

 

第3章《操作符和控制结构》
1,C++中,and保留字对应&&操作符,not对应着!,or对应着||,not_eq对应着!=。
2,不要比较俩个浮点数是否相等。
3,在C++里(C语言中不支持这种用法),可以用”相等“操作符(==)来比较俩个字符串是否相
等。
4,switch条件语句只能用来比较某个整数变量(包括char类型在内,因为它在本质上是一个小整
数)是否与一组给定的整数值中的某一个相匹配。
5,如果想查看某给定变量的内存占用量,使用不带括号的sizeof,如:sizeof(int)和sizeof
myVal。
6,变量值超出了该种数据类型所能表示的最大值时,将发生上溢(overflow);当它的值向下超
出了该种数据类型所能表示的最小值时,将发生下溢(underflow)。
7,break和continue都只能在循环语句和switch条件语句里使用,把它们用在if语句里不会有任何效果。exit语句将结束整个程序的运行,它通常用来(在发生严重错误时)中止某个程序的执行。

 

第4章《输入,输出和文件》
1,cin对象(按照这个示例程序里演示的语法)在读入一个字符时将忽略空格,如果想读入任意一个字符——包括各种空白字符在内,可以使用cin对象的get()函数。如:char myChar std::cin.get(myChar);
2,键入Y并按下回车键。程序将把Y赋值给answer变量,回车还留在输入流里。丢弃输入数据(从缓冲区里删除它,不对它做任何处理)可以使用ignore()函数。

 

第5章《定义个人函数》
1,使用某种程序设计语言编写一个函数的目的说来非常简单:把一个处理过程封装起来并给它起一个名字,这样就可以方便地通过调用这个名字(即调用这个函数)而反复执行这个处理过程中的每个步骤。
2,函数原型通常集中安排在main()函数的定义之前。各用户定义的完整内容依次列在main()函数的后头。
3,对象数据类型可以有它自己的函数,那些函数通常称为方法。
4,在定义自己的函数时,你可以给任意多个输入参数设置默认值,但必须把所有的必选参数放在可选参数之前。这是C++新增功能,C语言不支持。
5,C++里的函数重载(overloading)机制比你此前见到的东西都高深,这种语言的灵活性的强大功能在它身上体现的淋漓尽致。所谓函数重载说的是用同样的名字再定义一个有着不同参数(可以是个数上的不同,也可以是数据类型上的不同)但有着同样用途的函数。
6,函数重载最适用于需要对不同的数据类型进行同样的处理的场合。

 

第6章《复杂的数据类型》
1,虽然可以把一个地址转换为一个整数,但不应该把它保存在另一个整数变量里,如果想把一个地址存入一个变量,就应该使用指针。
2,创建变量时,系统将分配一些内存来保存它们的值;每个内存块都有独一无二的地址;变量的地址可以利用&variablename语法(&是“取地址”操作符)来检索;可以把地址赋给一种称为指针的特殊的变量;指针的类型必须与它保存其他地址的变量的类型相一致。
3,指针所保存的是内存中的一个地址。它不保存数据值本身,也不负责为了保存该数据值而分配内存。因此,应该确保指针对应一个已经存在的变量或一块已分配的内存。
4,星号有俩种用途,第一种用途是创建指针,int *myPointer = &myint;第二种用途是对指针进行解引用:*myPointer = 23;
5,无类型(void)指针,即没有声明为某种特定类型的指针。在对一个无类型指针进行解引用前,必须先把它转换为一种适当的数据类型。
6,在C++(以及C语言)里,数组的名字同时也是一个指向其基地址(其第一个元素的地址)的指针。
7,要理解“对象”这个概念,必须先熟悉“结构”概念并掌握在程序里使用结构的办法。结构是一种包含多个子变量的变量定义。类(class)是一种包含子变量和函数(也叫做方法)的变量定义。

原创粉丝点击