Pure Virtual Function and Abstract Class
Pure Virtual Function and Abstract Class
Function
C++ Pure Virtual Functions
For example,
class Shape {
public:
Note: The = 0 syntax doesn't mean we are assigning 0 to the function. It's just
the way we define pure virtual functions.
Abstract Class
#include <iostream>
using namespace std;
// Abstract class
class Shape {
protected:
float dimension;
public:
void getDimension() {
cin >> dimension;
}
// Derived class
class Square : public Shape {
public:
float calculateArea() {
return dimension * dimension;
}
};
// Derived class
class Circle : public Shape {
public:
float calculateArea() {
return 3.14 * dimension * dimension;
}
};
int main() {
Square square;
Circle circle;
return 0;
}
Output