C++中类构造函数(普通构造函数和拷贝构造函数)和析构函数讲解(附代码)

本文详细讲解了C++中的构造函数,包括无参构造函数和有参构造函数,强调了构造函数初始化列表在初始化const修饰的数据成员时的重要性。接着介绍了拷贝构造函数的原理和使用场景,以及如何生成拷贝构造函数。最后,概述了析构函数的作用,它是用来清理内存,防止内存泄漏的重要工具,并通过实例展示了析构函数回收内存的过程。
摘要由CSDN通过智能技术生成


构造函数初始化

类在实例化前不会占用内存,只用对象实例化后则会有内存存储数据,对象初始化用构造函数,构造函数在对象被实例化时被调用,有且只调用一次,构造函数可重载,与类同名,可带有参数,但是没有返回值。构造函数分为无参构造函数和有参构造函数,无参构造函数就是默认构造函数,有参构造函数如果参数均赋有默认值则是默认构造函数,因此默认构造函数(实例化对象时不需要传递参数)有两种情况,一种是无参,一种是有参,但是参数均赋有默认值。

无参有参构造函数初始化代码
#include<iostream>
#include<string>
using namespace std;
class Student 
{
public:
	//默认构造函数
	Student()
	{
		cout << "Student()" << endl;
	}
	//有参构造函数
	Student(int age, string name)
	{
		this->age = age;
		this->name = name;
		cout << this->age<<" "<<this->name << endl;
	}
	void eat()
	{
			cout << "student--eat" << endl;
	}
protected:
		string name;
private:
		int age;
};
int main()
{
	//调用默认构造函数
	Student stu;
	//调用有参构造函数(需要传参,如果构造函数已经设置默认值则不用传参即为默认构造函数)
	Stu
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值