日期:2011-03-22 13:55:00 来源:本站整理
类的分化,抽象类与纯虚函数的需求性[VC/C++编程]
本文“类的分化,抽象类与纯虚函数的需求性[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
为了不模糊概念在这里我们就简单的阐述一下类的分化,前面的教程我们侧重报告了类的担当,担当的特点就是,派生类担当基类的特点,举行构造扩大,这种渐渐扩大,渐渐在各派生类中分化彼此差别特点的历程其实就是类的分化.
分化历程笔者在这里不想再拿代码举行过量阐述解析了,意思说到,关于渐渐分化,渐渐扩大的思惟就靠大家自己考虑了.
拿前面交通工具类的程序举行考虑,由交通工具派生出来的汽车类,飞机类,是具有更具体特点的描写的类,而关于交通工具这一个基类来说,它的特点是模糊的,遍及的,假如成立一个交通工具类的对象并没有实际意义,为了对这种没有必要可以成立对象的类举行约束,c++引入了抽象类的特点,抽象类的约束掌握根源于纯虚函数的定义.
生命一个类的成员函数为纯虚函数的意义在于让c++知道该函数并没有意义,它的作用只是为派生类举行虚函数重载保存位置.
纯虚函数的定义办法就是在类的成员函数的声明之后加上“=0”的标志,类中一旦有纯虚函数的定义那么这个类就再也不能成立此类的对象了,我们把这种类叫做抽象类.
抽象类的示例代码以下:
//程序作者:管宁
//站点:www.cndev-lab.com
//全部稿件均有版权,如要转载,请务必注明出处和作者
#include<iostream>
usingnamespacestd;
classVehicle
{
public:
Vehicle(floatspeed,inttotal)
{
Vehicle::speed=speed;
Vehicle::total=total;
}
virtualvoidShowMember()=0;//纯虚函数的定义
protected:
floatspeed;
inttotal;
};
classCar:publicVehicle
{
public:
Car(intaird,floatspeed,inttotal):Vehicle(speed,total)
{
Car::aird=aird;
}
virtualvoidShowMember()//派生类成员函数重载
{
cout<<speed<<"|"<<total<<"|"<<aird<<endl;
}
protected:
intaird;
};
intmain()
{
//Vehiclea(100,4);//错误,抽象类不能成立对象
Carb(250,150,4);
b.ShowMember();
system("pause");
}
以上是“类的分化,抽象类与纯虚函数的需求性[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论