我对大多数OO理论有了深刻的理解,但让我困惑的一件事是虚拟析构函数.
我认为无论什么以及链中的每个对象,析构函数总是会被调用.
你什么时候打算让它们成为虚拟的?为什么?
c++ polymorphism shared-ptr virtual-destructor
在c ++中,我们喜欢在析构函数中做一些事情.但在什么样的情况下,析构函数不会被调用?
以下情况中的示例:
exit()
TerminateProcess()
c++ destructor call
c++ ×2
call ×1
destructor ×1
polymorphism ×1
shared-ptr ×1
virtual-destructor ×1