当前位置:  开发笔记 > 大数据 > 正文

虚拟构造器

如何解决《虚拟构造器》经验,为你挑选了1个好方法。

是否需要虚拟构造器?如果是这样,任何人都可以发布一个场景



1> Mark Ingram..:

如果你在谈论C++中的虚拟析构函数(没有虚拟构造函数这样的东西),那么如果你以多态方式使用你的子类,它们应该总是被使用.

class A
{
  ~A();
}

class B : public A
{
  ~B();
}

A* pB = new B();
delete pB; // NOTE: WILL NOT CALL B's destructor

class A
{
  virtual ~A();
}

class B : public A
{
  virtual ~B();
}

A* pB = new B();
delete pB; // NOTE: WILL CALL B's destructor

编辑:不知道为什么我有一个downvote为此(如果你发表评论会很有帮助......)但是也在这里阅读

http://blogs.msdn.com/oldnewthing/archive/2004/05/07/127826.aspx

推荐阅读
喜生-Da
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有