C++ 析构函数

  

1、什么是析构函数

   在C++语言中,析构函数是用于释放类在定义对象时所分配的资源,同时,析构函数的名字与类的名字

 必须一至,而析构函数会在对象的生命周期结束时被系统自动调用,另外,每个类中只有一个析构函数。

 

2、析构函数的语法格式

      ~ 类名()

      {

        代码;

      }

 

  语法格式分析:

  (1)波浪符号~ 格式要求,不能省略。

  (2)必须是所在类的类名。

  (3)一对大括号,代表函数的主体。

  (4)在大括号中可以编写函数主体的代码。

 

3、 例子:

       class Human  //定义了人类

       {
           public:
             int head;
             int body;
             int leg;
             int hand;
             int eye;
             int mouse;
             int ear;
             int nose;

             char *name; //名字  

             Human()  //构造函数

             {

                Age = 23;   

                name = new char[50]; //通过new分配字符数组的内存空间

                             并返回内存空间的起始地址给name。

             }  

             ~Human()

             {

                 delete name; //释放name所指向的内存空间

             }

       };

      

       Human *ZS;   //定义了指针对象ZS

       ZS = new Human; //通过 new 操作并根据Human类分配了一个内存空间,

                   并返回内存空间地址给指针对象ZS。

       

       delete ZS;   //调用delete前先调用析构函数~Human,把name所指向的内存空间释放掉,

                 然后,再释放Human所指向的内存空间。

 

不要停留在理论学习上,尽快转到真实环境进行代码编写实践,请下载下方的训练环境。

>>>下载训练环境与使用说明(使用真实的开发环境,结合游戏闯关进行编程训练)