gpt4 book ai didi

C++ 析构函数作为虚函数?

转载 作者:太空狗 更新时间:2023-10-29 19:38:51 24 4
gpt4 key购买 nike

我最近刚读到,将 C++ 析构函数实现为虚函数是一种很好的做法[1]。为什么会这样?这是一个普遍的好习惯吗?如果不是,在什么情况下/情况下析构函数会成为虚函数?

引用

  1. https://www.blackhat.com/presentations/bh-usa-07/Afek/Whitepaper/bh-usa-07-afek-WP.pdf

最佳答案

Herb Sutter 在他的文章 "Virtuality." 中详细讨论了这个主题准则 #4 指出“基类析构函数应该是公共(public)的和虚拟的,或者是 protected 和非虚拟的。”

如果您的类不是设计或打算用作基类,则没有理由使用虚拟析构函数声明它。

关于C++ 析构函数作为虚函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6434264/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com