#include <iostream>
using namespace std;

struct IA {
	virtual void calcA() = 0;
};

struct A : public IA {
	void calcA() { IA::calcA(); }
};

int main() {
	// IA ia; // error: IA is abstract
	A a;
	a.calcA();
	return 0;
}

void IA::calcA()  { cout << "default calcA()"; }