常函数
class phone{
int num;
void getphone(){
num = 10;//根this->num=10一样
//phone *const this;
this = NULL;//this指针不可修改指向,因为它本质上是个指针常量
}
}
当在成员函数后面加入了一个const之后
class phone{
//不加const的时候,是phone *const this
//加了const之后,是const phone *const this,使得this指向和本身都不能修改
void getphone() const{
}
int num;
multable int num2;//但是即使是常函数,加入关键字multable之后也使得其能修改
}
常对象
class phone{
void getphone() const{
}
int num;
multable int num2;
}
void main(){
const phone p;//这就是常对象
p.num = 10 ;//不能修改
p.num2 = 10;//能够修改因为multable
}
注意事项:常对象只能调用常函数,因为常对象不允许修改变量,但是普通函数可以修改,冲突