C++Primer第二章看完后记得的小知识

引用与指针很类似,但本质上确实不同的两个东西。引用不是对象,只是一个对象的别名,因而引用必须初始化。指针属于对象,因而存在着指向指针的引用,而不存在指向引用的指针,即是指向了引用本质上而言是指向了引用所代表的对象。int *&变量名  指指向指针的引用,而int &*变量名   则会报错。

const 限定符,分为顶层const和底层const,顶层const 包括const int a=1; int const *b等;表示a,b一旦指向某个对象,就无法更改了。顶层const 对于常用的类型名的赋值操作无影响,而指针变量要求赋值左端也是顶层const。而底层const包括 const int *c;const int &d;表示c所指向的对象或者d所表示的表名对象不可被更改,当底层const作为等号右侧赋值时,要求左侧的对象或者引用也是底层const,如int *e= b;就是错误的。从上述可以看出指针拥有顶层和底层const,而引用只有底层const。

空指针:C++11新标准中引入了字面值nullptr来表示,过去还有使用字面值0来生成空指针,过去的程序也曾用过NULL的预处理变量来作为空指针。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值