类似于手机需要有出厂设置,出厂设置会将最基本的东西进行初始化,保证后续的使用.------------------>构造
当你需要处理手机时,需要将你以前所有使用过的记录清理调用. --> ---------------------------------------------析构---
1、 函数名与类名一致
2、函数没有返回值,也没有void
3、可以用参数,可以重载
(1)无参构造:函数没有参数;
{
类名()
{
}
}
在实例化对象时,如果对象没有参数,则调用该构造。
(2)带参构造;(构造函数可以设置一个或者多个参数)
{
类名(<参数类型> <参数名>………)
}
(3)拷贝构造:
1、函数名与类名一致,但是在函数名前需要添加~符号,~类名()
2、函数没有返回值,也没有void
3、不能有参数,意味着不可以重载
~类名()
{
释放堆空间上的成员属性。Delete
}
__________________________________________
代码:
#include
using namespace std;
class Hero
{
public:
Hero()
{
name=" ";
attack=0;
cout<<"构造函数"<
}
Hero(string name1)
{
name=name1;
cout<<"带参数构造函数"<
~Hero()
{
cout<<"析构函数"<
string name;
int attack;
};
int main(int argc, char *argv[])
{
Hero He1; //构造函数
Hero He2; //析构函数
Hero He3("tom"); //带参数构造函数
cout<
}