类的继承

来源:互联网 发布:淘宝漏洞券 编辑:程序博客网 时间:2024/06/07 11:26
<span style="white-space:pre"></span><span style="background-color: rgb(255, 255, 255);">在这里全都只是我对学习c++过程的一些小总结,知识点没有那么细,但后面会慢慢深入的研究和探讨</span>
<span style="background-color: rgb(255, 255, 255);">我从大一到现在大二上半年,都对c/c++ 一直很迷茫,不是自己不会吧,是对于一些事情的抗拒,对与指针,还有对于类,我认为非常的难,还有数据结构,然后就产生惰性,不想去学习,而我之前的学习也是为了应付考试。而且前些天学了会java,以为自己会喜欢java,其实是自己在逃避,我不能在继续逃避了,我要面对我一切对于c/c++不会的东西,慢慢的去从基础去钻研,把原先和现在不会的知识好好的去掌握!!!</span>
<span style="background-color: rgb(255, 255, 255);"></span><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255); font-size: 24px;">1.类的继承和派生</span>
    从基类(Mammal类)中派生出一个类(Dog类),这个新类中继承了(Mammal类)中的功能
2. 派生语法
    要从一个类派生出另一个类,可在类声明中的类名后加上冒号,再指定类的访问控制(public、protected或private)
            例如:class Dog : public Mammal
     Dog从Mammal类那里继承了除了赋值构造函数、构造函数和析构函数外的其他所有函数成员,和相应的变量
        3. 派生类的构造函数
             派生类的构造函数,需要先对其基类进行构造,在对派生类进行构造
<span style="white-space:pre"></span>class Mammal:
<span style="white-space:pre"></span>{
<span style="white-space:pre"></span>public:
<span style="white-space:pre"></span>Mammal();
<span style="white-space:pre"></span>};
<span style="white-space:pre"></span>class Dog : public Mammal
        {
<span style="white-space:pre"></span>public:
<span style="white-space:pre"></span>Dog();
<span style="white-space:pre"></span>private:
<span style="white-space:pre"></span>int age;
<span style="white-space:pre"></span>};
<span style="white-space:pre"></span>Dog::Dog(int age):
<span style="white-space:pre"></span>Mammal(),age(age){}  //  对基类进行构造
 4.重载和重写
在这里重载和重写只进行泛泛的概括一下:
重载:
a: 在一个作用域内
b:函数名相同,所含的参数个数不同
例如:
<span style="white-space:pre"></span>class Mammal
<span style="white-space:pre"></span>{
<span style="white-space:pre"></span>public:
<span style="white-space:pre"></span>Mammal();
<span style="white-space:pre"></span>Mammal(int age);
<span style="white-space:pre"></span>private:
<span style="white-space:pre"></span>int age;<span style="white-space:pre"></span>
<span style="white-space:pre"></span>}
重写:
a:一个在基类,一个在派生类
b:函数名,参数,返回值都要相同,就连const也不能落下
`<span style="white-space:pre"></span>class Mammal:
{
public:
Mammal();
<span style="white-space:pre"></span>void speak() const { std::cout << "Mammal sound!\n"; }
};
class Dog : public Mammal
        {
public:
Dog();
<span style="white-space:pre"></span>void speak() const { std::cout << "Woof!\n"; }
private:
int age;
};
Dog::Dog(int age):
Mammal(),age(age){}  //  对基类进行构造



 

1 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 a字裙子没有内衬怎么办 踩过蟑螂的鞋子怎么办 宝宝给蚂蚁咬了怎么办 脚被蚂蚁咬肿了怎么办 孩子被蚂蚁咬了怎么办 家住高层有老鼠怎么办 久看手机眼睛疼怎么办 晚睡眼睛疼了怎么办 眼睛肿了有点痛怎么办 眼角两边长痘痘怎么办 坐动车行李超重怎么办 海康威视黑屏了怎么办 备孕喝酒抽烟了怎么办 鼻炎鼻子不通气怎么办速效办法 2岁宝宝智力落后怎么办 六个月宝宝尖足怎么办 3个月宝宝尖足怎么办 2岁宝宝发育慢怎么办 2岁宝宝便秘怎么办呀 2岁宝宝老是便秘怎么办 宝宝4岁不说话怎么办 宜家柜子味道重怎么办 家里有小飞虫怎么办呀 汽车里进老鼠了怎么办 老鼠跑到车里了怎么办 我的小车有老鼠怎么办 车里面进了老鼠怎么办 街电充电宝丢了怎么办 充电宝充不了电怎么办 脚裸扭伤肿了怎么办 大货车电瓶亏电怎么办 货车电瓶被偷了怎么办 小乌龟尾巴断了怎么办 长青春痘怎么办简单小妙招 一关灯就有蚊子怎么办 狗狗误食蟑螂药怎么办 泰迪误食蟑螂药怎么办 猫咪吃了蟑螂药怎么办 狗把蟑螂药吃了怎么办 猫吃了蟑螂诱饵怎么办 猫吃了蟑螂中毒怎么办