diff options
author | Alva Connor Waters <connor_waters@hotmail.com> | 2015-10-02 15:55:05 +0000 |
---|---|---|
committer | Alva Connor Waters <connor_waters@hotmail.com> | 2015-10-02 16:10:22 +0000 |
commit | 455afa3a7bf59fc272f3439825da55659765eec0 (patch) | |
tree | 2997facb27d4931bea20617b8c58ecaa55164863 | |
parent | ae86e4ebabb0c78c1bd8052e6ab5916446ef39c2 (diff) |
More explanation on virtual destructors
-rw-r--r-- | c++.html.markdown | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/c++.html.markdown b/c++.html.markdown index 1cf5508a..b59635f5 100644 --- a/c++.html.markdown +++ b/c++.html.markdown @@ -349,7 +349,10 @@ public: // These are called when an object is deleted or falls out of scope. // This enables powerful paradigms such as RAII // (see below) - // Destructors must be virtual to allow classes to be derived from this one. + // Destructors should be virtual if a class is to be derived from; + // if they are not virtual, then any resources allocated using RAII in + // the derived class will not be released if it destroyed through a + // base-class reference or pointer. virtual ~Dog(); }; // A semicolon must follow the class definition. |