设为首页 加入收藏

TOP

effectiveC++(十)(七)
2010-12-26 23:05:16 】 浏览:14665
Tags:effectiveC

perator delete必须同时写,这样才不会出现不同的假设。如果写了一个自己的内存分配程序,就要同时写一个释放程序。(关于为什么要遵循这条规定的另一个理由,参见article on counting objects一文的the sidebar on placement章节)

因而,继续设计airplane类如下:

class airplane {        // 和前面的一样,只不过增加了一个
public:                 // operator delete的声明
  ...

  static void operator delete(void *deadobject,
                              size_t size);

};

// 传给operator delete的是一个内存块, 如果
// 其大小正确,就加到自由内存块链表的最前面
//
void airplane::operator delete(void *deadobject,
                               size_t size)
{
  if (deadobject == 0) return;         // 见条款 8

 

首页 上一页 4 5 6 7 8 9 10 下一页 尾页 7/14/14
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇effectiveC++(十一) 下一篇effectiveC++(九)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

最新文章

热门文章

C 语言

C++基础

windows编程基础

linux编程基础

C/C++面试题目