第10章类与对象(二)
1
本章主要内容
const对象与const函数
友元函数与友元类
使用this指针
动态内存分配与new和delete 运算符
static类成员
多文件结构和编译预处理命令
数据抽象与信息隐藏
容器类与迭代
代理类
2
const对象与const函数
对于既需要共享,又需要防止被改变的数据可声明为常量const
常量在程序运行期间是不可改变的
最低权限原则是良好软件工程的最基本原则之一
3
常量的种类
常引用:被引用的对象不能被更新。
const 类型说明符&引用名
常对象:必须进行初始化,不能被更新。
类名 const 对象名
常数组:数组元素不能被更新。
类型说明符 const 数组名[大小]...
常指针:指向常量的指针。
const char *name = “John”;
注:常对象必须进行初始化,且不能被修改。
4
如果在说明时用const修饰,被说明的引用为常引用。
const 类型说明符&引用名;
const int &r ;
常引用所引用的对象不能被更新。
5
例10_1 常引用做形参
#include<>
void display(const double& r);
int main( )
{
double d();
display(d);
return 0;
}
void display(const double& r)
{
cout<<r<<endl;
r=r+1; //错误,常引用指向的对象不能被修改
}
6
常对象
声明常对象时,必须进行初始化。
类名 const 对象名;
例: A const a(3,4);
常对象的成员数据的值不能被改变。
通过常对象只能调用常成员函数。
通过常对象不能调用普通的成员函数。
7
常对象举例
class A
{
public:
A(int i,int j) {x=i; y=j;}
...
private:
int x,y;
};
A const a(3,4); //a是常对象,不能被更新
8
类的常成员
常成员数据
使用const关键字说明的成员数据。
常成员函数
使用const关键字说明的成员函数。
9
1、常成员函数
常成员函数说明格式:返回类型说明符函数名(参数表)const;
常成员函数实现格式:
返回类型说明符类名::函数名(参数表)const { };
常成员函数不能更新对象的成员数据;
常成员函数不能调用类中的非常成员函数。
const关键字可以被用于参与对重载函数的区分
通过常对象只能调用它的常成员函数,而不能调用其他成员函数。
10
c++课件c7 来自淘豆网m.daumloan.com转载请标明出处.