15.0 C++远征:常指针和常引用

5-4常指针和常引用

1.常指针与常引用的用法:

2.const修饰紧跟其后的词:

Coordinate * const pCoor = &coor1; const修饰pCoor,这种方式定义的常对象指针“只能指向coor1,但可以调用coor1的不同的函数”;(常对象指针:拥有读写权限);
const Coordinate *pCoor = &coor1; const修饰Coordinate的对象,所指对象不能改变,只能调用coor1的“常成员函数”。(常指针:只拥有读权限)

3.注意

        Coordinate coor1(3,5); 
        Coordinate &coor2 = coor1;	//定义了一个引用,引用的名字是coor2,并且用coor2指向coor1,coor1就有了coor2的别名。
        Coordinate *pCoor = &coor1;	//给对象指针赋值的时候一定要加取地址符号&,例如Coordinate *pCoor = &coor1;
        const Coordinate &coor2 = coor1;	//对象的常引用(常引用只有读权限)
        const Coordinate *pCoor = &coor1;	//对象的常指针
        coor2.getX();	//coor2只读,getX()具有读写权限
        Coordinate * const pCoor = &coor1;	//一旦指定一个对象之后,就不能再指向别的对象,只限指向的对象不能变,但是指针本身指向对象的内容是可变的,指向的对象是可以读写的(即为pCoor不能指向其它位置,它指向的位置中的内容是可以变的)
        const Coordinate *pCoor = &coor1;	//常对象,因此只能调用常成员函数
        //常引用和常指针中,const都是在最前面
posted @ 2016-11-18 11:17  青_阳  阅读(152)  评论(0编辑  收藏  举报