常量指针 const int *p 指的是指针p指向的对象不可改变
指针常量 int const *p指的是指针p的值不能改变
引用的底层实现是指针常量
image.png
引用的创建的时候必须初始化,而且需要初始化一个左值(即一个有名字,可取地址的对象)
若初始化的值为常量,则编译器会报错:非常量引用的初始值必须为左值
image.png
指针是有型别的,虽然指针变量的值是一个整数,但是不能将一个整形变量或者一个整形常量直接赋值给指针
image.png
但初始化为0和NULL(#define NULL 0)除外
image.png
void*不具有型别,虽然它能存放对象的地址,但是它不能进行解引用
image.png
image.png
相关资料:
https://www.zhihu.com/question/37608201
https://zhuanlan.zhihu.com/p/93653407
网友评论