一起来学习C++的构造和析构

这篇文章主要为大家详细介绍了C++构造和析构,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

1. 构造函数 

1.1 构造函数长什么样子

(1) 函数名和类名相同

(2) 没有返回值

(3) 如果不写构造函数,任何类中都存在一个默认的构造函数

I 默认的构造函数是无参的

II 当我们自己写了构造函数,默认的构造函数就不存在

(4) 构造函数在构造对象的时候调用

(5) delete可以用来删掉默认的函数

(6) 指定使用默认的无参构造函数,用default说明

(7) 允许构造函数调用另一个构造函数,只是要用初始化参数列表的写法

(8) 初始化参数列表 : 只有构造函数有

I 构造函数名(参数1,参数2,…):成员1(参数1),成员2(参数2),…{}

II 避免形参名和数据成员名相同的导致问题

1.2 构造函数干嘛的

(1) 构造函数用来构造对象

(2) 构造函数更多是用来初始化数据成员

1.3 思考

(1)为什么不写构造函数可以构造对象? 是因为存在一个默认的无参构造函数,所以可以构造无参对象

(2) 构造函数重载为了什么? 为了构造不同长相的对象。

#include <iostream>
using namespace std;
class MM 
{
public:
	//MM() = delete;     删掉默认的构造函数
	MM(string mmName, int mmAge) 
	{
		name = mmName;
		age = mmAge;
		cout << "带参构造函数" << endl;
	}
	//MM() 
	//{
	//	cout << "无参构造函数" << endl;
	/

本文标题为:一起来学习C++的构造和析构

基础教程推荐