C++ primer 读书笔记一
来源:互联网 发布:64码高清网络电视 手机 编辑:程序博客网 时间:2024/06/01 20:53
本文申明:作者实际工作已有一定年限。此番记录以及读书属于温故知新。
第二章 变量和基本类型
1.关于变量初始化,变量根据存储类型被分为2类,局部以及全局,全局被初始化为0,无需多说。局部变量或者说是自动变量是否会被初始化随机初始化代码实验。
#include<iostream>int main(){ int b1 = 4,b2 =5; int v1,v2; int a1=2,a2=3; v2+=v1; std::cout<<"end of sum"<<v2<<std::endl; return 0; }
promote:code liuchuanwu$ ./a.out
end of sum0
实验结果说明:未初始化的自动变量将会被随机复制。内存不一定是取前面定义的变量或者后面定义的变量。我猜想应该是取逻辑上的前后变量。
2.关于局部变量与全局变量的优先级问题:当同时存在局部变量以及全局变量时,如果没有显示的(::a)说明使用全局默认使用局部。
3.关于引用
在c中没有引用的概念,以deftype来宏定义实现。关于C++中引用,可以理解为重命名或者同名更为恰当
int a=1;int &b=a;b =1;//b=1,a=1
#include<iostream>int main(){ int b1 = 4; int &a=b1; a=1; std::cout<<" "<<a<<" "<<b1<<std::endl; return 0;}
promote:code liuchuanwu$ ./a.out
1 1
4.关于C++指针,存在以下几种状态
(1)指向一个对象
(2)指向对象的相邻空间
(3)空指针
(4)无效指针(除以上状态外的)
5.void 指针,void 指针非空指针,可以理解为空白支票可以随意填写。
6 .关于指针的指针以及指针的引用。
指针的指针:将指针理解为一种复合变量类型。
int a =1;int *p = &a;int **pp = &p;
指针的引用也是一样的
int a = 1;int *p = &a;int *&pp = p;
7.const --c和C++ 都存在const 两者存在差异
const 在C++中相当于java的final
而在c 语言中const 是修饰的变量。存在常量指针,指针常量等概念。具体可以参考其他博客
关于const c和c++
8.顶层const 以及底层const
顶层const指指针本身不可变,底层const 指所指的对象不可变
顶层:指针本身是常量。
底层:指针所指的对象是常量。
<1>. 永远从右往左读一个变量声明。
<2>. const永远修饰const出现地点左边的声明类型。
<3>. 如果左边没有声明类型,就修饰右边
9.关于typedef using
typedef:一般用于结构体的重名
using:声明引入命名空间的一个成员
- C++Primer读书笔记(一)
- 《C++primer》读书笔记一
- C++Primer读书笔记(一)
- 《C++primer》读书笔记一 类
- C++primer读书笔记(一)
- 《C++Primer》读书笔记(一)开始
- c++ primer读书笔记一
- C++ primer 读书笔记一
- C-PRIMER PLUS读书笔记
- C-PRIMER PLUS读书笔记
- C Primer Plus 读书笔记
- C++Primer读书笔记(二)
- 写写C++Primer读书笔记
- C primer 读书笔记1
- C++Primer读书笔记
- C++Primer读书笔记 Al
- C++primer读书笔记
- c primer读书笔记 第一章
- QFileInfo使用整理
- Oracle IN条件包含查询出来的列表和固定值的查询语句
- Ubuntu网络配置
- const和指针
- 使用.NET Reflector单步调试编译好的程序集
- C++ primer 读书笔记一
- UVA 11583 Partitioning by Palindromes (区间DP)
- BZOJ 4278: [ONTAK2015]Tasowanie 后缀数组
- 设计模式(4)--原型模式
- 欢迎使用CSDN-markdown编辑器
- C语言中EOF是什么意思?
- PHP入门资料
- 版本迭代
- Java的安装和配置环境变量