C++:初始化列表

构造函数在上一篇帖子我们提到了对成员变量初始化的功能,出了在构造函数的函数体中队成员变量一个一个赋值以外,我们还可以采用初始化列表。

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

class AA
{
private:
	int a;
	const int b;
public:
	AA():b(200),a(100)
	{
		//a = 100;
	}

	AA(int n) :a(n),b(a)//也可以用参数来初始化变量
	{

	}

};


int main()
{
	AA aa;
	cout << aa.a << endl;
	cout << aa.b << endl;

    AA bb(10)
    cout << bb.a << endl;
	cout << bb.b << endl;
	
	return 0;
}

注意:

初始化列表的初始化顺序是按照成员变量的声明顺序。

它在构造函数前执行。

相关推荐
带多刺的玫瑰37 分钟前
Leecode#9刷题之回文数
数据结构·算法
leonkay44 分钟前
C# 特性(Attribute)——【1】基础讲解
开发语言·青少年编程·面试·c#·.net·个人开发
harmful_sheep1 小时前
java group by常见用法
java·开发语言·python
泯泷1 小时前
手搓JSVM第 5 篇:写第一个编译器:从 AST 生成 IR
前端·javascript·算法
SKH.1 小时前
Linux软件编程(6)线程间通信
java·开发语言·数据库
泯泷1 小时前
手搓JSVM第 7 篇:控制流:if、while 与 jump
前端·javascript·算法
泯泷1 小时前
手搓JSVM第 6 篇:把 IR 编成字节码:emit 与 label fixup
前端·javascript·算法
泯泷1 小时前
手搓JSVM第 3 篇:从栈式 VM 到寄存器式 VM:为什么我们选择寄存器
前端·javascript·算法
泯泷1 小时前
第 4 篇:让 VM 支持变量:Slot、Environment 与 TDZ
前端·javascript·算法
whcyhhh1 小时前
头歌实践教学平台:数据科学与大数据技术导论(十六)
大数据·开发语言·python