在C++中,純虛類是一種包含至少一個純虛函數的抽象類。純虛函數是通過在函數聲明中使用"= 0"來聲明的。
由于純虛類是抽象類,不能被實例化,因此它沒有構造函數。但是,純虛類的子類需要實現它的純虛函數,并且可以有自己的構造函數。
示例代碼如下:
class AbstractClass {
public:
virtual void pureVirtualFunction() = 0;
};
class ConcreteClass : public AbstractClass {
public:
ConcreteClass() {
// 構造函數的實現
}
void pureVirtualFunction() override {
// 純虛函數的實現
}
};
int main() {
ConcreteClass obj;
obj.pureVirtualFunction();
return 0;
}
在這個例子中,AbstractClass是一個純虛類,包含一個純虛函數pureVirtualFunction。ConcreteClass是AbstractClass的子類,實現了純虛函數pureVirtualFunction,并且有自己的構造函數。在main函數中,我們可以實例化ConcreteClass的對象,并調用它的純虛函數。