抽象类构造函数问题
enum Size{Mini, Medium, Full};class CVehicle{public: CVehicle(Size s = Medium, int n = 0) : size(s), nSpotsNeeded(n) {}protected: Size size; int nSpotsNeeded;};class CBus : public CVehicle{public: CBus() : CVehicle(Full, 5) {}};
#include <iostream>using namespace std;enum Size{Mini, Medium, Full};class CVehicle{public: CVehicle(Size s = Medium, int n = 0) : size(s), nSpotsNeeded(n) {} virtual~CVehicle()=0;//完全可以把析构函数设置为纯虚函数,编译能够通过的。protected: Size size; int nSpotsNeeded;};class CBus : public CVehicle{public: CBus() : CVehicle(Full, 5) {}};void main(){}
[解决办法]