C++primer笔记

第二章

引用与指针

引用即别名

  1. 引用本身不是一个对象

  2. 不可定义为常量

  3. 不能定义指向引用的指针

指针为对象

  1. 指针的值应为下列四种:
1 指向一个对象
2 指向紧邻对象所占空间的下一个位置
3 空指针 
4 无效指针
  1. 初始化为空指针
int *p=nullptr;
int *p=NULL;
  1. void* 可以存放任意类型对象的地址

const 限定符

  1. 常量引用是对const对象的引用

  2. 常量指针 是指指针本身是个常量,不可改变指向

  3. 类型要匹配

  4. 指向常量的指针也可以改指向非常量

  5. 顶层const 与 底层const

1 const int ci=42;  //这是一个top 不能改变ci的值

2 const int *p=&ci;  //这是一个low 可以改变p所指 且const与上式常量类型匹配
3 int *const p2=a;  // 这是一个top 不能改变指针自身指向
对指针:top表示指针本身是个常量,low表示所指对象是个常量

4 const int &r=ci //这是一个low,因为引用非对象,故不能const
1 当执行拷贝操作时 可以忽略顶层cosnt,但不可忽略底层(非常量可以转化为常量)
2 const int* p=ci //正确 加了low
3 int &r=ci   //错误 见上
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值