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;
}

注意:

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

它在构造函数前执行。

相关推荐
声声codeGrandMaster9 分钟前
AI之模型提升
人工智能·pytorch·python·算法·ai
黄金小码农24 分钟前
工具坐标系
算法
特立独行的猫a27 分钟前
C++开发中的Pimpl机制与类声明机制深度解析:现代C++的编译解耦艺术
开发语言·c++·pimpl
GoWjw31 分钟前
在C&C++指针的惯用方法
c语言·开发语言·c++
小南家的青蛙31 分钟前
LeetCode第1261题 - 在受污染的二叉树中查找元素
算法·leetcode·职场和发展
heartbeat..32 分钟前
JUC 在实际业务场景的落地实践
java·开发语言·网络·集合·并发
tryxr33 分钟前
线程安全的类 ≠ 线程安全的程序
java·开发语言·vector·线程安全
君义_noip34 分钟前
信息学奥赛一本通 1453:移动玩具 | 洛谷 P4289 [HAOI2008] 移动玩具
c++·算法·信息学奥赛·csp-s
superman超哥39 分钟前
仓颉语言中错误恢复策略的深度剖析与工程实践
c语言·开发语言·c++·python·仓颉
玖剹42 分钟前
记忆化搜索题目(二)
c语言·c++·算法·leetcode·深度优先·剪枝·深度优先遍历