前言:持之以恒地把这本书看完。
---------------------------------2014.5.5-----------周一-
第2章 变量 和基本类型 2.1 基本的内置类型
C++定义了一套包含算术类型(arithmetic type)和空类型(void)在内的基本类型。
2.1.2 类型转换
※含有无符号类型的的表达式
unsigned u= 10; int i = -42;
std::cout<
std::cout<
说明:u+i表达式中,想加前首先把整数-42转换成无符号数。 提示:如果表达式里面既有无符号类型又有带符号类型,当带符号类型取值为负,出现异常结果。 2.1.3字面值常量
※整数和浮点型字面值常量
坚持就是胜利,每天写一点,每天都有一点进步,加油!!!
20---------十进制 024-------八进制 0x14-------十六进制
--------------2014年5月9号 ------星期五 ※字符和字符串字面值 ‘a’//字符字面值
“Hellow World”///字符串字面值
编译器在每个字符串的结尾都加上空字符“\\n” ※转义序列
两类字符不能直接使用: 一类是不可打印的字符。(退格等)
另一类是在C++中有特殊含义的字符(单引号,双引号,问号,反斜线)
※ 指定字面值类型 P37
※ 布尔值面值和指针字面值
True 和false为布尔字面值 nullptr为指针字面值 2.2 变量
变量定义形式:类型说明+ 变量名
对象:一块能存储数据并具有某种类型的存储空间。
注意:初始化不是赋值,初始化的含义是创建变量时赋予其一个初始值,而赋值是把当前对象的值清除,用一个新的值代替。
坚持就是胜利,每天写一点,每天都有一点进步,加油!!!
列表初始
int i{3}; int j(4);
2.2.2. 变量的声明的定义
如果声明一个变量而非定义一个变量,就在变量的前面添加一个由extern的关键字。
extern int i; //声明i而没有定义i
int j; //声明并定义j
如果给i赋予初始值了,i也就抵消了extern 的作用。
静态类型(statically typed):C++是一种静态类型的语言。其含义就是在编译阶段检查类型。 2.2.3 标示符(字母,数字,下划线) C++关键字(73)-------P43页 C++操作符替代名(11)-------P43页 2.2.4 名字的作用域(scope)
嵌套的作用域---彼此包含,被包含的叫内层作用域,包含的叫外层作用域 2.3 复合类型
2.3.1 引用(reference)---为对象提个别名
int val = 1024;
int &ref = val; //ref为val的引用 int &ref; //错误引用必须被初始化
坚持就是胜利,每天写一点,每天都有一点进步,加油!!!
说明:引用并非对象,相反的,它只是一个已经存在对象所起的另外一个别名。
因为引用不是一个对象,不能定义引用的引用。 引用的定义 ------引用的类型要与绑定的对象严格匹配。 2.3.2 指针
说明:指针本身就是一个对象,允许对指针赋值和拷贝。 获取对象的地址-------取地址运算符(&)
引用不是对象,没有实际地址,所以不能定义指向引用的指针。 利用指针访问对象-----解引用(*) 空指针---不指向任何一个对象
说明: 可以把0直接赋值给一个指针变量,但是不能把一个变量值为0的值赋给指针变量。
int zero = 0; int *p = zero; //错误
赋值和指针
Void* 指针 ------是一种特殊的指针类型,可以用于存放任意对象的地址。
2.3.3 理解复合类型的声明 定义多个变量
int i=1024,*p = &i,&r = i;
指向指针的指针
int ival = 1024;
坚持就是胜利,每天写一点,每天都有一点进步,加油!!!
int *pi = &ival;//pi 指向一个int型的数 int **ppi = π // ppi指向一个int型的指针
指向指针的引用
引用本身不是一个对象,不能定义指向引用的指针;但是可以定义指向指针的引用。
int i = 42; int *p ;
int *&r = p; //r为一个对指针p的引用 r = &i;//r赋值为i的地址,也就是另p指向i *r = 0; // 解引用r得到i的值
2.4 const 限定符 初始化和const
int i = 42;
const int ci = i;//ci的常量特征在执行改变ci的操作时才会发生作用。 int j = ci ;
//file.cc定义并初始化一个常量,改文件能被其他文件访问 extern const int bufsize = fun(); //file_1.h文件
extern const int bufsize ;
如果想在多个文件之间共享const对象,必须在变量定义之前添加entern关键字。
2.4.1 const 的引用-----常量的引用
坚持就是胜利,每天写一点,每天都有一点进步,加油!!!
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C++ Primer学习笔记在线全文阅读。
相关推荐: