共用数据的保护
来源:互联网 发布:陈路 微屏软件 编辑:程序博客网 时间:2024/05/22 07:52
一、常对象
* 类名 const 对象名 [(实参表列)] = const 类名 对象名 [(实参表列)]*
如果一个对象被声明为常对象,则不能调用该对象的非const型成员函数,目的是为了防止这些函数会修改常对象中数据成员的值。
常成员函数的声明
void get()const;
如果一定要修改常对象中的某一个数据成员的值,则应该对该数据成员声明为mutablemutable int count;将const声明为可变的数据成员,这样就可以用声明为const的成员函数来修改他的值。
二、常对象成员
1.常数据成员
eg : const int hour;
注意:
只能通过构造函数的参数初始化表对场数据成员进行初始化
下面是非法:
Time::Time( int h ){ hour = h; //非法}
在类外定义构造函数,应写成:
Time::Time(int h):hour(h){}
2.常成员函数
只能引用本类中的数据成员,而不能修改他们
声明:
void get() const; //const在最后
在声明和定义函数时都要有const关键字,在调用时不用加const
注意:
常成员函数不能调用另一个非const成员函数
二、指向对象的常指针
将指针变量声明为const型,这样指针值始终保持为其初值,不能改变。
定义:
类名 * const 指针变量名
例如:Time * const ptrl = &t1;
指向对象的常指针变量的值不能改变,但可以改变其所指向对象的值。如果想将一个指针变量固定地与一个对象相联系,可以将它指定为const型指针变量。往往用常指针作为函数形参,目的是不允许在函数执行过程中改变指针变量的值。
三、指向常对象的指针变量
定义:
const char * ptrl;
指向常变量的指针可以指向const型,也可以指向非const型变量。
当指向非const变量时,通过指针访问变量时,不能改变变量的值,不是以指针访问变量时,可以改变变量值。
如果函数的形参是指向非const型变量的指针,实参只能用指向非const变量的指针。指向常对象的指针最常用于函数形参,目的是保护形参指针所指向的对象,使他在函数执行过程中不被修改。 当希望在调用函数时对象的值不被修改,就应当把形参定义为指向常对象的指针变量,同时用对象的地址对实参(对象可为const可为非const)
0 0
- 共用数据的保护
- C++共用数据的保护
- C++----共用数据保护
- c/c++面向对象编程之共用数据的保护
- 共用数据保护(const 常量)
- 共用数据保护(const类型)
- 第九讲:共用数据的保护与对象的动态处理
- 第九讲:共用数据的保护与对象的动态处理
- C++程序设计(第2版--9.6)---共用数据的保护(与const的结合使用)
- C++ 共用.私有和受保护的继承
- 共享数据的保护
- 数据保护的方法
- 数据的保护
- 数据的保护
- C++共用体类型数据的特点
- 数据执行保护的奥秘
- 不同数据保护的方法
- 数据保护的选择方案
- Struts2-工作原理
- Android中ListView、GridView的通用适配封装简化代码
- “Linux内核分析”实验报告一
- android 状态选择器
- 第一个python的小程序
- 共用数据的保护
- Leetcode 328:Odd Even Linked List
- 碳纤维复合材料加固钢筋混凝土的极化作用
- HBase原理和设计
- Android Service详解
- IEnumerable与IEnumerator区别
- JVM内存模型
- 【Spark工作机制详解】 执行机制
- implements与extends知识点整理