摘自《C++程序设计语言》
【问题】
- 为什么频繁地使用引用,而不是指针或者对象本身
- 为什么很多类似于string::const_iterator的语言?这是什么作用?
- 字符串string:字符串连接(+)、字符串比较(=)
- 输入输出:cin、cout
- 容器
- vector:类似于数组,可以通过[ ]下标访问
- list:一般通过遍历的方式访问
- map:键值对
bool类型
- 在算术和逻辑表达式里,bool都将被转换为int
- 指针也可以隐式地转换为int,非零指针为TRUE,零值的指针将转换为false
char
- 一切char都是8位,且都可以转换为int型
- char是signed还是unsigned由实现决定
- signed char的范围为-128~127,unsigned char的范围为0~255
- 注:为什么可以到-128——原码—>反码(正数的原码即为反码,负数的反码为原码除符号位的部分取反,为了解决1+(-1)= -2的问题,但是出现了1+(-1)= -0的问题)—>补码(正数不变,负数为反码+1,解决-0的问题)
- 问题:为什么char a = -128,printf(a)时输出的不是-0,而是-128?
int
- 一切int皆为有符号类型
- int有short,int,long三种类型
- int有十进制、八进制、二进制三种表现形式。10 = 012 = 0xa
大小
- C++中类型的大小是依赖与实现的,所以不能准确给出int是多大这样的定义
- sizeof方法用char的大小的倍数来表示对象的大小。eg:sizeof(char)= 1
void
- 函数无返回值:void f()
- 指向类型不明的对象的指针:void *f
enum枚举
- enum enumName { factor1,factor2,factor3 }
- 枚举符的值默认从0开始递增,但可以显示地通过factor=num指定枚举符的值,且这个值不能超过2^k - 1或者(-2k,2k - 1)
- 每一个factor被称为枚举符,每个枚举符都是enumName类型的
声明
- 待阅
网友评论