class A {
public:
virtual void x() = 0;
virtual void y() = 0;
virtual int z() = 0;
};
class B: public A {
public:
void x();
void y();
int z();
void w();
};
class C: public A {
public:
void x();
void y();
int z();
};
"Class 'i' has virtual method 'j' but non-virtual destructor", where i = A, B C, and j = x, y, z
Do I need a virtual destructor?