首页 > 代码库 > 抽象类做函数参数问题

抽象类做函数参数问题

抽象类做函数参数 对象不可以,不过抽象类的指针和引用方式就可以,比如下面函数是合法的。
void fun(CAbstract *p);
void fun(CAbstract &a);
非法的例子:void fun(CAbstract obj);
指针和引用方式合法的原因,是因为指针和引用方式指向的对象可以是抽象类的派生类型的对象。而这些派生类可能不是抽象类。
形参实参结合的时候,就是用基类的指针和引用指向派生类对象
只要是基类有的方法,都可以正常调用

抽象类做函数参数问题