If a class is only used as a base class to derive other classes and therefore has only pure virtual member functions (no data members) - does it get an implicitly declared constructor?
class Object {
public:
virtual void show(std::ostream&) = 0;
virtual ~Object();
};