c++ primer 5 第2章 变量和基本类型
来源:互联网 发布:淘宝联盟可以注销吗 编辑:程序博客网 时间:2024/06/05 14:50
从大体上看,本章主要讲了c++中变量的基本内置类型、复合类型、const限定符及处理类型。
1.基本内置类型:包括算术类型和空类型
2.复合类型:包括引用和指针(当然还有其他复合类型)
2.1引用
eg.int a=1;int &b=a;
一般在初始化变量时,初始值会被拷贝到新建的对象中,然而定义引用时,程序把引用和它的初始值绑定到一起,而不是拷贝;
引用其实就相当于一个对象的别名,操作对象的引用就相当于操作对象本身;
引用必须被初始化。
2.2指针
指针本身是一个对象;
无需在定义时为它赋初值;
3.const限定符:包括const的引用,指向常量的指针和常量指针;顶层const和底层const;constexpr和常量表达式
3.1const与引用和指针
3.1.1const的引用
const int &c=1;//这样也可以
const的引用,即把引用绑定到const对象上。对常量的引用不能被用作修改所绑定的对象。
但是,对const的引用可能引用一个非const对象:
常量引用仅对引用可参与的操作做出了限定,对引用对象本身是否为常量未做限定
eg.int i=42;const int &r=i;
3.1.2指向常量的指针
指向常量的指针和const的引用类似。只表示不能通过指针来改变所指对象的值,而该对象不一定非得是常量。但是要想存放常量对象的地址,就必须用指向常量的指针。
3.13常量指针
常量指针是指指针本身的值是个常量,即它所存放的地址是不能改变的,但并不意味不能通过指针来修改其所指向的对象,这由对象的类型决定。
3.14顶层和底层const
顶层const表示指针本身是一个常量,底层const表示指针所指向的对象是一个常量。
3.15constexpr
常量表达式是指值不会改变,并且在编译过程中就能得到计算结果的表达式
eg.constexpr int m=20;
4.处理类型:包括类型别名,auto类型说明符,decltype类型说明符
两种用于定义类型别名的方法:
typedef double wage;
using S=sales_item;
auto 类型说明符:用于通过等号右边的表达式来判断等号左边的对象的类型(编译器完成)
auto 一般会忽略顶层const,保留底层const
dcltype类型说明符:类似auto,但是只取表达式或函数返回值等的类型,而无需接受对应的值。
dcltype((x))得到的一定是引用类型
- C++Primer学习:第2章 变量和基本类型
- [C++Primer]第2章.变量和基本类型
- 《c++primer》笔记 第2章 变量和基本类型
- c++ primer 5 第2章 变量和基本类型
- 【C++ Primer】摘记--第2章 变量和基本类型
- C++ Primer笔记 第2章 变量和基本类型
- 【C++ Primer】第2章 变量和基本类型
- 【c++ primer读书笔记】【第2章】变量和基本类型
- C++ Primer 第2章 变量和基本类型
- c++ primer 第2章 变量和基本类型
- 《C++ Primer》第2章:变量和基本类型
- C++ Primer 第2章 变量和基本类型
- C++Primer第五版 第2章 变量和基本类型(练习解答)
- 《C++Primer》读书笔记——第2章 变量和基本类型
- 《C++ Primer(第5版)》学习笔记:第2章 变量和基本类型
- C++primer第4版第二章变量和基本类型
- 《C++ Primer》 第02章 [ 变量和基本类型 ]
- 《C++ Primer》 第02章 [ 变量和基本类型 ]
- 启动/停止rabbitmq及日志查看
- HDU-1232-畅通工程
- 数组的概念以及数组的常规属性
- while循环和doWhile循环
- 1-14文件系统、find
- c++ primer 5 第2章 变量和基本类型
- HDU6058 Kanade's sum【模拟】
- C++函数的定义与调用
- Bad Cowtractors (Kruskal)
- 【zookeeper】zookeeper集群配置异常 Connection refused 和 myid file is missing
- USACO section 3.1 Stamps
- 1183 编辑距离
- AOJ890 修理牛棚 【贪心】
- mysql-python安装时EnvironmentError: mysql_config not found