展会信息港展会大全

C++静态成员变量 嵌套类分配回收内存
来源:互联网   发布日期:2016-01-26 10:29:55   浏览:1492次  

导读:嵌套类分配回收内存: include stdio h include assert h class CA { public: inline static CA *GetInstance(void) { assert(m_instance != NULL); return m_i ...

嵌套类分配回收内存:

#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;

}

赞助本站

人工智能实验室

相关热词: 静态成员变量 C++

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港