C++:const成员

const修饰成员变量,要在初始化列表中进行初始化。

const修饰成员函数,要放在函数后,称为常函数。常函数不能修改普通成员变量。

const修饰的对象,称为常对象。常对象不能修改普通成员变量,只能读取。

常对象只能使用常函数。

cpp 复制代码
#include<iostream>
using namespace std;

class AA
{
public:
	const int a;
	int b;
public:
	AA() :a(100)
	{
		b = 200;
	}
public:
	void Show() const//AA const * const this
	{
		cout << a <<" "<< b << endl;
	}
	void SS()
	{
		cout << a << " " << b << endl;
	}
};



int main()
{
	AA aa;
	aa.b = 20;
	aa.Show();

	const AA bb;
	//bb.b = 20;不行
	bb.Show();
	//bb.SS();不行



	return 0;
}
相关推荐
老赵的博客7 分钟前
c++ unqiue指针
java·jvm·c++
o0o_-_23 分钟前
【go/gopls/mcp】官方gopls内置mcp server使用
开发语言·后端·golang
Dxy123931021638 分钟前
python把文件从一个文件复制到另一个文件夹
开发语言·python
程序猿编码1 小时前
基于 Linux 内核模块的字符设备 FIFO 驱动设计与实现解析(C/C++代码实现)
linux·c语言·c++·内核模块·fifo·字符设备
怎么没有名字注册了啊1 小时前
MFC_Install_Create
c++·mfc
酷飞飞1 小时前
Qt Designer与事件处理
开发语言·qt·命令模式
天雪浪子2 小时前
Python入门教程之赋值运算符
开发语言·python
Wadli2 小时前
C++语法 | static静态|单例模式
开发语言·c++·单例模式
他们都不看好你,偏偏你最不争气2 小时前
【iOS】AFNetworking
开发语言·macos·ios·objective-c
Bigemap2 小时前
BigemapPro快速添加历史影像(Arcgis卫星地图历史地图)
java·开发语言