该文章的程序代码是按继承中的基类子类来写的。跟基本的构造函数与析构函数一样。只是加了一丢丢东西。现在我们直奔主题!
C++构造函数和析构函数主要负责构建对象和销毁对象,在构建对象的时候系统自己调用类中的构造函数。在对象作用域结束后,调用析构函数销毁对象。
一般来说,构造函数用来完成事先的初始化和准备工作(申请分配内存),析构函数用来完成事后所必须的清理工作(清理内存)
初始构造函数之构造函数特性:
1.构造函数名---类名一样
2.永远没有返回值
3.构造函数创建对象的时候调用构造函数
4.创建构造函数时,需要把构造函数放进类里面
5.结束申明时,则需要开始定义构造函数本身
构造函数放进类里面
定义构造函数本身
析构函数特点:
1.函数名:类名前加上~
2.没有返回值
3.没有参数,不可以被重载
4.必须公有
5.没有析构函数,默认析构函数
6.一个类中只能拥有一个析构函数
#include <iostream>
#include<string>
class Baseclass//定义一个类
{
public:
Baseclass();///构造器
~Baseclass();//析构器
void dosometing();//方法
};
class Subclass : public Baseclass//定义子类
{
public:
Subclass();
~Subclass();
};
//对基类构造器进行定义
Baseclass::Baseclass()
{
std::cout<<"进入基类构造器......\n\n";
std::cout<<"我在基类构造器干某事......\n\n";
}
//对基类析构器进行定义
Baseclass::~Baseclass()
{
std::cout<<"进入基类析构器......\n\n";
std::cout<<"我在基类析构器干某事......\n\n";
}
//对类的方法进行编写
void Baseclass::dosometing()
{
std::cout<<"dosometing函数的调用\n\n";
}
//对子类构造器进行定义
Subclass::Subclass()
{
std::cout<<"进入子类构造器。。\n\n";
std::cout<<"我在子类构造器干某事......\n\n";
}
//对子类析构器进行定义
Subclass::~Subclass()
{
std::cout<<"进入子类析构器。。\n\n";
std::cout<<"我在子类析构器干某事......\n\n";
}
int main()
{
Subclass duixiang;//定义一个对象
duixiang.dosometing();
std::cout<<"完事,收工!\n\n";
return 0;
}
///析构器是main将要结束的时候才进行的
欢迎大神批评指导,也欢迎正在学习C++初学者参考。