c++面对对象知识点总结

最近快要期末考试了,就稍稍做做总结,梳理一下知识点

先码上思维导图,可能会有点模糊,后面每个分支每个分支来

const obj
    const para
        const class &
        class& const
    const pointer
        const class* pointer
            类型要匹配上
        class*  const  pointer
    const member init
        必须要初始化
        在参数列表里初始化
        构造函数内部,不能对const成员赋值,编译器直接报错

inherit
    多重继承
        多继承的构造顺序
            按照继承列表来
        向上转型无法转换为private类型基类
    虚基
        抽象类
        纯虚函数
        虚函数
            虚析构
        虚基继承
            继承时虚基化
                虚基继承使对应的基类只有一个
                多继承的时候
    类的组合
        构造列表中,先对基类进行初始化,再对成员对象进行初始化

类的封装与多态
    多态
        动态
            虚函数
                体现为虚函数
                可以用抽象类的引用指针来调用子类方法
                    不可以用无法访问的基类
        静态
            重载
            运算符重载
    static member
        可以被private修饰
            只能用静态函数修改了
    封装
        this指针
        访问权限
            命名空间
    友元
        友元函数
        友元类
    构造函数
        默认构造函数可以带有初始值的参数
        构造函数初始化列表要调用基类的构造函数
    析构函数
        析构函数可以主动被调用

类型转换
    自定义类
        复制与赋值
    默认类型
        以前的知识点
    引用类型
        引用类型必须要初始化

重载
    operator redef
        单双目重载
            单目前置
                对于对象的话,前置的效率更高
            单目后置
                如果在类内定义的话,需要占位参数
        流运算符重载
            必须要返回流对象
        无法重载的运算符
            选择三目?:
            sizeof
            #预操作
            类访问
                .成员访问
                .*,->*两类指针
        operator=
            对于使用=号对于对象进行复制的时候,有深浅复制问题,要用重载=
            对于用=去初始化对象的,会调用构造函数
                但是如果是对以及构造好的对象赋值的话,就只是简单拷贝了
    函数重载
        友元函数重载
        二义性问题
            精确匹配
                默认double与float的不匹配
        类函数重载
            基类函数重载匹配
                类函数匹配的原则是,先在子类查找有无可以匹配到的函数(如果是默认转换匹配也复合)
                如果实在没有,才会去基类里面查询

标准输出输入,文件操作
    stream
        流输出格式控制符
        字符串流
            sstream::stringstream
            i/ostrstream(char[],length)
        预定义流
            cin
            cout
            cerr
            clog
    fstream
        IO

基本定义

template
    模板继承
        模板继承的访问
    模板文件结构

设计思想
    结构化的程序设计
        将数据和对数据的操作分离,程序是由一个个的函数组成的
    面对对象的程序设计
        将数据和操作封装在一起,程序是由一个个对象组成的,对象之间通过接口进行通信
            较好地支持代码复用

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值