C++ 的查漏补缺
1.cout 和cin是iostream的输入输出中的控制对象。
2.c++程序组成部分:预处理标志#、预处理指令include、头文件、main函数
3.endl功能:(1)“\n”换行 (2)调用输出流的flush函数,刷新缓冲区,让数据直接写入文件或者屏幕(需要立即显示时,比\n要好)
4.std::是名称空间标识符。c++标准库或对象都是在命名空间std中定义的,故使用标准库函数或对象时需要 std的限定
5. #include<iostream.h>与#include<iostream>的区别:
(1)<iostream.h>是非标准输入输出流,是C语言格式的,故不存在std这个名字空间标识符
(2)<iostream> 是c++标准输入输出流,c++规范的带有名称空间的头文件,包含std在名字空间内
using namespace std ---使用名字空间std
6.枚举:关键字enum,可将文字代替数字
enum{zero=100,one,two=200,three}; //zero=100,one=101,two=200,three=201
enum{zero=100,one,two,three}; //zero=100,one=101,two=102,three=103
enum{zero,one,two,three}; //zero=0,one=1,two=2,three=3};
7.&用来取地址;指针p用来保存地址,用*p来读取(修改)该地址处的数据--(指针是黑社会知道你家在哪里就为所欲为!)
指针若没有保存一个内存地址,就是一个失控指针,可以指向任意一个地址,并且对改地址的数值进行修改或者删除,后果非常可怕!解决办法是:将指针初始化为0,如int *p = 0;
8.不同类型的变量数据占用空间不同 --》不同类型的指针。
指针的类型不同该决定了指针运算方式的不同,所以不能将一种类型的指针赋给另一种类型的指针!(不匹配就会报错!)
9.指针地址:指针也是变量,也有地址保存指针变量。指针地址表示指针变量的地址。
指针保存的地址:指针的意义所在,保存其他变量的地址。
地址的值:若指针p指向该地址,则等于指针p的值。
10.为什么使用指针: ---指针可以对内存地址直接访问,在大型数据面前效率最高
(1)处理追踪存放的大型数据
(2)快速访问类的成员数据和函数
(3)以别名的方式向函数传递参数
11.this指针:指向该对象的.....,一般用于对象函数内部。
12.逗号操作符:是一组由逗号分隔的表达式,这些表达式从左至右计算,结果是其最右边的表达式值
13.赋值操作
-->赋值的左操作数必须是非const左值: