I just read a tutorial about destructors and virtual counterparts. Generally if I understood correctly every class that will potentially be inherited needs to have a virtual destructor. This is because if we use a pointer to a base class that the most recent class in inheritance can be freed and deallocated.
In my code I tried to implement this and as I did for other virtual member functions that I have, I added "override" keyword to a inherited destructor. As I did that Visual Studio started to complain after which I removed it.
If we use override keyword for virtual methods isn't it logic to use it for the destructor too?