共用数据的保护ppt课件.ppt

共用数据的保护ppt课件.ppt

ID:59128408

大小:72.00 KB

页数:22页

时间:2020-09-25

共用数据的保护ppt课件.ppt_第1页
共用数据的保护ppt课件.ppt_第2页
共用数据的保护ppt课件.ppt_第3页
共用数据的保护ppt课件.ppt_第4页
共用数据的保护ppt课件.ppt_第5页
资源描述:

《共用数据的保护ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、共用数据的保护*掌握:常对象的定义;引入常对象数据成员的方法;对象的常引用。 *理解:常对象的指针的定义及引用。 *了解:对象的动态建立和释放。 重点、难点 *常对象的定义;引入常对象数据成员的方法;对象的常引用。一、共用数据的保护有些数据却往往是共享的,例如实参与形参,变量与其引用,数据与其指针等,人们可以在不同的场合通过不同的途径访问同一个数据对象有时在无意之中的误操作会改变有关数据的状况,而这是人们所不希望出现的既要使数据能在一定范围内共享,又要保证它不被任意修改,这时可以使用const,即把有关

2、的数据定义为常量1、常对象定义常对象的一般形式为:类名const对象名[(实参表列)];const类名对象名[(实参表列)];二者等价。在定义对象时指定对象为常对象,数据成员不能被改变常对象中的数据成员为常变量且必须要有初值。如果一个对象被声明为常对象,则不能调用该对象的非const型的成员函数(除了由系统自动调用的隐式的构造函数和析构函数)。编译系统只检查函数的声明,只要发现调用了常对象的成员函数,而且该函数未被声明为const,就报错mutableincount2、常对象成员(类)可以在声明类时将成

3、员声明为const,即声明常数据成员和常成员函数①常数据成员作用和用法与一般常变量相似,用关键字const来声明常数据成员。常数据成员的值是不能改变的。有一点要注意:只能通过构造函数的参数初始化表对常数据成员进行初始化。说明:不能采用在构造函数中对常数据成员赋初值的方法,下面的用法是非法的:Time::Time(inth){hour=h;}如果在类外定义构造函数,应写成以下形式:Time::Time(inth):hour(h){}即只能通过参数初始化表对常数据成员hour初始化②常成员函数常成员函数的定

4、义:类型函数名const如果将成员函数声明为常成员函数,则只能引用本类中的数据成员,而不能修改它.一般的成员函数可以引用本类中的非const数据成员,也可以修改它们。在声明函数和定义函数时都要有const关键字,在调用时不必加const常成员函数可以引用const数据成员,也可以引用非const的数据成员const数据成员可以被const成员函数引用,也可以被非const的成员函数引用常成员函数不能调用另一个非const成员函数指向对象的常指针定义:将指向对象的指针变量声明为const型并将之初始化,这

5、样指针值始终保持为其初不能改变,即其指向始终不变。定义指向对象的常指针的一般形式为:类名*const指针变量名=对象地址;指向对象的常指针变量的值不能改变,即始终指向同一个对象,但可以改变其所指向对象中数据成员的值往往用常指针作为函数的形参,目的是不允许在函数执行过程中改变指针变量的值,使其始终指向原来的对象指向常对象的指针变量定义指向常变量的指针变量的一般形式为:const类型名*指针变量名; 例:下面定义了一个指向常变量的指针变量ptr:constchar*ptr;注意:const的位置在最左侧,

6、它与类型名char紧连,表示指针变量ptr指向的char变量是常变量,不能通过ptr来改变其值的。如果一个变量已被声明为常变量,只能用指向常变量的指针变量指向它,而不能用一般的(指向非const型变量的)指针变量去指向它。指向常变量的指针变量除了可以指向常变量外,还可以指向来未被声明为const的变量。此时不能通过此指针变量改变该变量的值。如果函数的形参是指向非const型变量的指针,实参只能用指向非const变量的指针,而不能用指向const变量的指针如果函数的形参是指向const型变量的指针,在执行

7、函数过程中显然不能改变指针变量所指向的变量的值指向常变量的指针变量可以指向const和非const型的变量,而指向非const型变量的指针变量只能指向非const的变量。以上介绍的是指向常变量的指针变量,指向常对象的指针变量的概念和使用是与此类似的,只要将“变量”换成“对象”即可(1)如果一个对象已被声明为常对象,只能用指向常对象的指针变量指向它,而不能用一般的(指向非const型对象的)指针变量去指向它。(2)如果定义了一个指向常对象的指针变量,并使它指向一个非const的对象,则其指向的对象是不能通

8、过指针来改变的。(3)指向常对象的指针最常用于函数的形参,目的是在保护形参指针所指向的对象,使它在函数执行过程中不被修改。(4)如果定义了一个指向常对象的指针变量,是不能通过它改变所指向的对象的值的,但是指针变量本身的值是可以改变的。对象象的常引用一个变量的引用就是变量的别名.如果形参为变量的引用名,实参为变量名,则在调用函数进行虚实结合时,并不是为形参另外开辟一个存储空间如果不希望在函数中修改实参的值,可以把引用t声明为const(常引用

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。