- 6
- 0
- 约5.38千字
- 约 33页
- 2018-03-04 发布于浙江
- 举报
[高等教育]c课件第07章高级类
第07章高级类
-2-
本章内容安排
const成员函数与常对象
接口与实现
文件结构组织
内联函数
对象成员
-3-
const成员函数的动机
类中某些函数只会读取数据成员,而不会修改数据成员,作为一种契约和良好习惯,应该将该成员函数声明为常成员函数。
方法:在函数头的结尾加上const
在常成员函数中,如果修改数据成员(或调用非常成员函数以间接修改),编译器将报错。
-4-
常成员函数声明
#include iostream
class Tricycle
{
public:
……
int getSpeed() const;
void setSpeed(int newSpeed);
private:
int speed;
};
setSpeed要修改数据成员,不能声明为常成员函数。
getSpeed只读取数据成员,应该声明为常成员函数。
-5-
常成员函数的定义
int Tricycle::getSpeed() const
{
return speed;
}
void Tricycle::setSpeed(int newSpeed)
{
if(newSpeed=0)
{
speed=newSpeed;
}
}
常成员函数声明和定义时都要加const关键词。
良好编程习惯:尽可能将成员函数声明为常成员函数,
防止对数据成员的意外修改。
-6-
常对象
与
原创力文档

文档评论(0)