C++常对象精讲_const关键字的用法
更新时间:2013年10月09日 08:45:27 作者:
用const修饰的声明数据成员称为常数据成员。变量或对象被 const修饰后其值不能被更新。因此被const修饰的变量或对象必须要进行初始化
const关键字:
用const修饰的定义对象称为常对象;
用const修饰的声明成员函数称为常成员函数;
用const修饰的声明数据成员称为常数据成员。
变量或对象被 const修饰后其值不能被更新。因此被const修饰的变量或对象必须要进行初始化。
常对象说明:常对象是指对象的数据成员的值在对象被调用时不能被改变。常对象必须进行初始化,且不能被更新。不能通过常对象调用普通成员函数,但是可以通过普通对象调用常成员函数。常对象只能调用常成员函数。常对象的声明如下:
const <类名> <对象名>
<类名> const <对象名>
两种声明完全一样没有任何区别。
1、通过下面例子来理解常对象:
A、请指出下面程序的错误
复制代码 代码如下:
class A{
private:
int w,h;
public:
int getArea() const
{
return w*h;
}
int getW(){ return w;}
void setWH(int x,int y) {w=x,h=y;}
A(int x,int y){w=x,h=y;}
A(){;}//本例中不能省略
};
void main()
{
A a;//非常对象可以不初始化
a.setWH(3,9);
A const b; //常对象必须声明的同时初始化,正确的是 A const b(3,6)。
b.setWH(3,7); // 假如上面改正后用这一句,还是错误应为b是常对象不能调用非常成员函数,切其值调用时不能改变,setWH()
cout<< a.getArea()<<endl<< b.getArea()<<c.getArea();
system("pause");
相关文章
使用C++将yolov8 onnx格式转化为tensorrt格式
这篇文章主要为大家详细介绍了如何使用C++将yolov8 onnx格式转化为tensorrt格式,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下2024-11-11
C++基于灰度图上色GrayToColorFromOther的实现
本文主要介绍了C++基于灰度图上色GrayToColorFromOther的实现,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧2021-07-07


最新评论