80s网站建设工作室,济宁一建建设集团有限公司,网页版梦幻西游礼包码,潍坊网站建设案例指针、引用和常量的关系_夜悊的博客-CSDN博客
1.
① 指针是对象#xff0c;引用不是对象#xff08;在此可以理解为变量#xff0c;一个变量是一个对象#xff09;
指针不必须初始化引用只是为一个已经存在的对象所起的另一个名字#xff08;别名#xff09;#xff…指针、引用和常量的关系_夜悊的博客-CSDN博客
1.
① 指针是对象引用不是对象在此可以理解为变量一个变量是一个对象
指针不必须初始化引用只是为一个已经存在的对象所起的另一个名字别名所以普通引用不可指向常量引用必须初始化初始化时的右值是一个已经存在的对象
int *p; int val; //一个已经存在的“对象”
int ref val;int ref1; //× 引用必须初始化
int ref2 1; //× 普通引用不可指向常量② 不能定义指向引用的指针因为引用不是对象
int val;
int refval;
int *pref; //×
③ 可以定义指向指针的引用因为指针是对象
int a 3;
int* p a;
int ref p; // x
int* ref p; // x 即 int (*ref) p;
int* ref p; // 即 int* (ref) p;
int *p 错误*与p靠得最近所以p是一个指针但是这个指针的类型是int ,所以这个是错吴的 因为不能创建引用的指针。
int * p 正确 与p靠得最近所以p是一个引用这个引用的类型是int*也就是一个指针变量的引用但是必须初始化否则也是错误的。
④ 不能定义引用类型的常量因为引用不是对象可以简记为有const但没有const。
普通指针不可指向常量普通指针也不可指向const变量指向常量的指针可指向常量指向常量的指针可指向非常量普通引用不可指向常量指向常量的引用可指向常量指向常量的指针可指向非常量
int val 0;
int const ref val; // × 不能定义引用类型的常量
int const ref val; // 指向常量的引用可以简称”常引用“
注const可以修饰基础类型或指针不能修饰引用因为const只能修饰对象。
zconst关键字修饰的对象_sgbl888的博客-CSDN博客_const修饰对象