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;
}
相关推荐
pale_moonlight19 分钟前
十、 Scala 应用实践 (上)
大数据·开发语言·scala
6***v41736 分钟前
搭建Golang gRPC环境:protoc、protoc-gen-go 和 protoc-gen-go-grpc 工具安装教程
开发语言·后端·golang
1***s63237 分钟前
Rust在WebAssembly中的应用实践
开发语言·rust·wasm
水痕0138 分钟前
go使用cobra来启动项目
开发语言·后端·golang
scixing1 小时前
函数式编程 第八讲 循环者,递归也
开发语言·c#
2501_941879811 小时前
Python在微服务高并发异步API网关请求处理与智能路由架构中的实践
java·开发语言
闻缺陷则喜何志丹1 小时前
【SOSDP模板 容斥原理 逆向思考】3757. 有效子序列的数量|分数未知
c++·算法·力扣·容斥原理·sosdp·逆向思考
BestOrNothing_20152 小时前
一篇搞懂 C++ 重载:函数重载 + 运算符重载,从入门到会用(含 ++、<<、== 实战)
c++·函数重载·运算符重载·operator·前置后置++·重载与重写
艾斯比的日常2 小时前
Java 三色标记算法:并发垃圾回收的核心技术解析
java·开发语言·算法
2501_941144422 小时前
Python + C++ 异构微服务设计与优化
c++·python·微服务