时间:2021-05-20
指向对象的常指针
将指向对象的指针变量声明为const型,并使之初始化,这样指针值始终保持为其初始值,不能改变。
复制代码 代码如下:
Time t1(10,12,15),t2;
Time * const ptr1=&t1;
ptr1=&t2;
定义指向对象的常指针的一般形式为
类名 * const 指针变量=对象地址;
注意应该在定义指针变量时使之初始化
指向对象的常指针变量的值不能被改变,即始终指向同一个对象,但可以改变其所指向对象中的数据成员(非const型)的值。
往往用常指针作为函数的形参,目的是不允许在函数执行过程中改变指针变量的值,使其始终指向原来的对象。如果在函数的执行过程中,修改了该形参的值,编译系统就会出现错误,给出出错信息,这样比用人工来保证形参值不被修改更可靠
指向常对象的指针
如果一个变量已经被声明成常变量,则只能用指向常变量的指针变量指向它,而不能用一般的(非const型的)指针变量指向它。
复制代码 代码如下:
const int a;//定义常变量a
const int *p;//定义指向常变量的指针
p=&a;
对于对象也是如此,如果声明一个对象为常对象,则只能用指向常对象的指针指向它,而不能用一般的(非const型的)指针变量指向它。
复制代码 代码如下:
const Time t1;//定义常对象
const Time *p;//定义指向常对象的指针
p=t1;
定义指向常对象的指针变量的格式
const 类名 * 指针名;
有以下几点需要注意:
(1)一个指向常对象的指针是可以指向一个非const型的对象的,但是指向的对象是不能通过指针来改变的。
而一个常对象只能由指向常对象的指针指向,具体看表:
(2)注意指向常对象的指针和指向对象的常指针的差别(4)如果定义了一个指向常对象的指针变量,是不能通过它改变所指向的对象的值的,但是指针变量本身的值是可以改变的。
复制代码 代码如下:
const Time *p=&t1;//定义指向常对象的指针变量p,并指向对象t1
p=&t2;//p改为指向t2,合法
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
常(量)指针常指针就是我们说的指向常量的指针,顾名思义,它是用来指向常量的。用常指针指向常变量实际上,C++规定只能用指向常变量的指针指向常变量,普通指针指向它
C++指向对象的常指针将指针变量声明为const型,这样指针值始终保持为其初值,不能改变。如:Timet1(10,12,15),t2;//定义对象Time*co
C++this指针详解this是C++中的一个关键字,也是一个常量指针,指向当前对象(具体说是当前对象的首地址)。通过this,可以访问当前对象的成员变量和成员
C++中指针指向二维数组实例详解一维指针通常用指针表示,其指向的地址是数组第一元素所在的内存地址,如下intary[4][5];int(*aryp)[5]=ar
C++对象指针指向对象的指针在建立对象时,编译系统会为每一个对象分配一定的存储空间,以存放其成员。对象空间的起始地址就是对象的指针。可以定义一个指针变量,用来存