c++之继承1

终于到了面向对象的三大特征之一的继承了,这里只是简单的写了个继承的demo,并没有实现什么太大的功能,也没有太多的语法,这里需要注意一点的就是,我的类的成员都是私有成员,之前我的一篇文章写了成员列表初始化的一些规则,然后这里需要添加一个规则就是,如果想通过派生类调用基类的构造函数,那么必须通过成员列表初始化,如果成员列表初始化没有显示的调用构造函数,那么就会调用基类的无参构造函数,然后就没有太多需要注意的,因为是学习笔记,所以就想尽可能的写的完善。

代码:

//这段代码主要是演示了类的继承,c++不同于java,可以实现多继承,在派生类里面我们需要通过参数列表化来进行基类构造函数的调用,
//然后考虑到封装,我们应该使用get和set来得到和设置变量,而不是直接修改变量 
#include<iostream>
using namespace std;
class Person{
    private:
    string name;
    int age;
    public:
        //基类的构造函数 
        Person(string str,int age){
            name=str;
            this->age=age;
            }
            //显示函数 
        void show(){
            cout<<name<<":"<<age<<endl;
          }
          //返回基类的名字 
        string getName(){
            return name;
        }
        //返回基类的年龄 
        int getAge(){
            return age;
        }
    };
class Student:public Person{
    private: 
        int number;
    public :
        //派生类的构造函数,需要调用基类的构造函数,如果没有显示调用,那么系统会调用基类的无参构造函数,如果基类没有无参构造函数,那么程序会出错 
        Student(string str,int age,int number):Person(str,age){
       this->number=number;
       }
       //显示数据 
    void show(){
        cout<<getName()<<":"<<getAge()<<":"<<number<<endl;
       }
    };
       
int main(){
    Person p("jike",5);
    Student stu("jike",23,999);
    stu.show();
    p.show();
    system("pause");
    return 0;
    }


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值