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;
}
相关推荐
cheems952716 小时前
锁策略的介绍
java·开发语言
清水白石00816 小时前
《Python × 数据库:用 SQLAlchemy 解锁高效 ORM 编程的艺术》
开发语言·python·json
风中月隐16 小时前
C语言中以坐标的方式图解“字母金字塔”的绘制
c语言·开发语言·算法·字母金子塔·坐标图解法
崇山峻岭之间17 小时前
C++ Prime Plus 学习笔记041
c++·笔记·学习
_风华ts17 小时前
虚函数与访问权限
c++
Arva .17 小时前
说说线程的生命周期和状态
java·开发语言
1001101_QIA17 小时前
C++中不能复制只能移动的类型
开发语言·c++
tryxr17 小时前
HashTable、HashMap、ConcurrentHashMap 之间的区别
java·开发语言·hash
serendipity_hky17 小时前
【go语言 | 第5篇】channel——多个goroutine之间通信
开发语言·后端·golang
无事好时节17 小时前
Linux 线程
java·开发语言·rpc