会计考友 发表于 2012-8-2 08:51:15

2012年软件水平初级资格程序员考试重点知识14

发现大家对写库很热衷。不过,写一个库,用C++最麻烦的事情,就是你new完了要记着delete。不过,这么傻瓜化的操作,有没有办法让电脑自动完成呢?当然是可以的。思路有以下三点:
  Parent对象。
  每一个对象,都要有唯一的parent,当parent析构时,要带动他所有的children析构。
  好处:
  实现简单,且具有逻辑性。
  比如:一个窗口,他的按键,就应该是这个窗口的children,当窗口析构的时候,按键也必须析构。
  坏处:
  不可以有复制构造函数……
  这个也很好理解。A-->B-->C中,a是b的parent,b是c的parent,如果允许复制,B复制了个D,那C就有两个parent,究竟怎么析构呢?
  开源库的实现:   Qt实现了这种方式的内存管理,尤其是对GUI框架,十分适用。
页: [1]
查看完整版本: 2012年软件水平初级资格程序员考试重点知识14