示例:常成员函数
#include<iostream>
#include<stdio.h>
#include<string.h>
using namespace std;
class MP3Player{ //“MP3播放器”类
char *type; //型号
char *color; //颜色
public:
MP3Player(const char *ty=NULL, const char * co=NULL) {
if(ty==NULL)
type=NULL;
else{
type=new char[strlen(ty)+1]; //申请空间
strcpy(type,ty); //将ty赋值给type
}
if(co==NULL)
color=NULL;
else{
color=new char[strlen(co)+1];
strcpy(color,co);
}
}
~MP3Player(){
if(type) delete []type; //释放空间
if(color) delete []color;
}
const char *getType()const{ return type; } //定义常成员函数
const char *getColor()const{ return color; }
};
int main(){
MP3Player myplayer("天籁-1", "黑色");
cout<<myplayer.getType()<<endl;
cout<<myplayer.getColor()<<endl;
return 0;
}
知识点:
(1)定义:在类中使用关键字const说明的成员函数为常成员函数
(2)格式:类型说明符 函数名(参数表)const;
(3)声明和定义是都需要后缀关键字const;
(4)关键字const可用于区分重载函数
(5)常成员函数可以访问普通数据成员、常数据成员、常对象的数据成员,但不可修改
(6)常成员函数是常对象的唯一对外接口,即常对象只能调用它常成员函数