程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> C++ 靜態成員變量 嵌套類分配回收內存

C++ 靜態成員變量 嵌套類分配回收內存

編輯:更多關於編程

      嵌套類分配回收內存:

      #include <stdio.h>

      #include <assert.h>

      class CA

      {

      public:

      inline static CA *GetInstance(void)

      {

      assert(m_instance != NULL);

      return m_instance;

      }

      void Print(void)

      {

      puts("主類的Print函數運行看看");

      }

      class Garbage//用來分配內存的嵌套類

      {

      public:

      Garbage(int i, int j)

      {

      printf("Garbage分配內存開始:%d %dn", i, j);

      m_instance = new CA(123123, 234234234);

      }

      ~Garbage()

      {

      delete m_instance;

      puts("Garbage收拾殘局結束");

      }

      };

      static Garbage m_garbage;

      protected:

      friend class Garbage;

      CA(int i, int j){printf("主類構造函數運行: %d %dn", i, j);}

      ~CA(){printf("主類析構函數運行,結束了哦n");}

      static CA *m_instance;

      };

      CA *CA::m_instance = NULL;

      CA::Garbage CA::m_garbage(2, 3);

      int main()

      {

      CA *cmb = CA::GetInstance();

      cmb->Print();

      return 0;

      }

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved