查看: 416|回复: 0

[C/C++] C++中的继承

[复制链接]

0

技术

9

魅力

1

原创

版主

禁止访问

Rank: 7Rank: 7Rank: 7

积分
7734
人气
176
分享
52

最佳新人活跃会员

发表于 2022-9-4 20:11:42 | 显示全部楼层 |阅读模式
【继承的定义】
所谓继承,指的是两个类之间相互继承的关系
例如,我定一个了两个类:myClassA和myClassB
[C++] 纯文本查看 复制代码
class myClassA{
public:
    char userName[100];
    char userPassword[100];
    bool checkUserName();
    bool checkUserPassword();
private:
    void abcd();  //懒得命名了
}

class myClassB{}

这时,就出现了一个问题:
当我想在myClassB中定义myClassA中的函数,那我应该怎么做呢?
这时,就要用到继承了
[C++] 纯文本查看 复制代码
class myClassB : public myClassA{}

继承的代码如下:
[C++] 纯文本查看 复制代码
class 类名 : 继承方式 其他类

其中,继承方式有如下这些:
public  //公有
protected  //保护
private  //私有

这样,我们就可以定义myClassA的public中的函数了(当然也能调用里面的数据)
这时,它们的关系如下
myClassA:叫爸爸
myClassB:爸爸
咳咳,别误会,这说明myClassA是myClassB的父类,myClassB是myClassA的子类
myClassA(父)
      ↓
myClassB(子)
当然,有一点特别需要注意:
以下代码是非法的
[C++] 纯文本查看 复制代码
class myClassB : public myClassA{
private:
    bool checkUserName(){
        
    }
}

为什么呢?
因为myClassB继承的是myClassA的public部分,而myClassB却在private中定义,这样是不彳亍得
以下代码合法
[C++] 纯文本查看 复制代码
class myClassB : public myClassA{
public:
    bool checkUserName(){

    }
}

看到了吗?只能在相同的类型中定义/引用
好了,你学费了吗awa


本帖被以下淘专辑推荐:

小菜鸡一枚~
Gitee主页:https://gitee.com/juruoqwq
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表