[ERROR]
An abstract class may not be used as argument type
class A{
public:
virtual void f(void) = 0; // pure virtual function
// ==> A is an abstract class
};
void main(void){
void fct(A);
}
Use a pointer/reference to the object:
void main(void){
void fct(A *);
}
Use a derived class from abstract class
class B : public A{
public:
void f(void){}
};
void main(void){
void fct(B);
}