C++中参数列表

1)参数列表的初始化顺序和初始化列表列出的顺序无关,只与它在类中声明顺序有关

2)

#include <stdio.h>
#include <iostream>

using namespace std;

class Parent 
{
public:
	int m_a;
	int m_b;

public:
	Parent(int b): m_b(b), m_a(m_b) ///
	{

	}

	void Show()
	{
		cout << m_a << " " << m_b << endl;
	}
};



int main()
{
	Parent P(100);

	P.Show();
	
	while(1);
	return 0;
}

构造函数等价于

Parent(int b)
{
    m_a = m_b;       //此时m_b的值并不确定
    m_b = b;
}

3)const变量必须由参数化列表去初始化

class Array
{
public:
	const int m_len;
	int *m_arr;

public:
	Array(int len):m_len(len)
	{
		m_arr = new int[m_len];
	}

	void Show()
	{
		cout << m_len << endl;
	}
	void Print()
	{
		cout << m_arr[0] << endl;
	}
};




int main()
{
	Array A(4);
	
	A.Show();
	A.m_arr[0] = 10;

	A.Print();
	while(1);
	return 0;
}

 

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值