抽象类可不可以.实例化对象

发布网友 发布时间:2022-04-22 06:45

我来回答

1个回答

热心网友 时间:2022-06-16 18:56

引用性说明类,我学C++好像没听过
抽象类可以给你解释一下
抽象类的概恋:
抽象类:就是包含有未定义的虚函数的类,也就是说只在类中声明了一个抽象类,但没有具体定义,或者把虚函数定义为virtual void f()=0;这样的形式。注意函数后有一个=0。因此派生类必须实现这个函数,如果派生类没有实现这个函数,则这个派生类也是抽象的。

抽象类为什么不能实例化对象:因为抽象类中包含有没有定义的函数,因此不能用抽象类来实例化对象。但可以声明抽象类的指针指向派生类。

示例:
class A{public: virtual void f()=0;}; //声明一个抽象类
class B:public A{public: void f(){cout<<"B"<<endl;};

void main()
{A ma; //错误,因为类A是抽象类,含有未实现的函数f()。因此不能创建对象
B mb;
A *p=&mb; //可以创建抽象类的指针指向派生类对象。
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com