Let us assume I have two classes:
class Base{};
class Derived: public Base{};
none has d’tor, in this case if I declare about variables:
Base b;
Derived d;
my compiler will produce for me d’tors, my question is, the default d’tors of the b and d will be virtual or not?
No, they won’t. If you want a virtual destructor, you will have to define your own, even if its implementation is exactly the same as that which would be supplied by the compiler: