均为保护数据信息,不允许修改某些部分
常对象
const 类名 对象名(实参列表)
类名 const 对象名(实参列表)
以上两种均可定义(声明同时一定要初始化)
定义后其中的成员值均不能被修改
且常对象不能调用普通成员函数(只能调用后加const的常函数)
常成员函数
int area() const
{
}
1、声明和定义都要写const(关键词const在后面)其他和普通函数定义声明无区别
2、常函数不可调用非const函数,但调用数据成员无限制(不可修改,修改就报错)
常数据成员
声明定义
eg:
const int length;
定义时不可初始化
在函数中使用参数初始化列表初始化
注意不可在函数体内赋值
构造函数(形参列表):常数据成员名(形参)
{}
常指针&&指向常对象的指针
前者
不可改变指向
定义方式
类名 *const 指针变量名=&对象名
后者
不可改变指向对象的值(可改变指向)
定义方式
const 类名*指针变量名
常引用
即在函数声明时,在引用参数的前加const
如
int add(const int& x)
此时函数不可修改x值