C++学习总结_2

string

    C语言字符串大小和长度不同
    string 定义的字符串大小和长度相同
    C++中推荐使用at方法返回单个字符
    .append():拼接字符串函数
    .erase(0,2 ):从下标0开始删除2个字符
    .empty():判断字符串是否为空,空返回1,非空返回0


内联函数

    inline关键字修饰的函数
    内联函数将函数体中的内容直接展开到主函数进行内容替换(相当于宏定义)
    牺牲编译速度换取执行速度

    使用注意
        代码不超过5行
        内部不存在循环、递归等操作
        频繁调用的函数


函数重载(多态:静态多态)

    C++中允许用同一个函数名定义多个函数
    1)同名函数
    2)函数标签不同(参数个数与参数类型)


C++的三大特性

    1)封装

    2)继承

    3)多态

        静态多态

            //函数重载
            //运算符重载

        动态多态


函数参数的默认值(缺省值)

    在函数定义时给参数初始化
    不传入参数时参数为默认值
    避免和函数重载同时使用,会产生二义性(同一个语句产生歧义,计算机无法分辨)的问题
    函数定义和函数声明时不能同时定义默认值
    当一个参数设定了默认值后,其右边所有的参数都必须设定默认值
    对于函数中有多个参数的情况下,少几个参数的默认值,调用时就得写几个参数

哑元函数

    如果一个函数的参数只有类型没有名字,即为哑元参数,含有哑元参数的函数为哑元函数

    作用:
        向前兼容性
        运算符重载中区分函数

类与对象

    对象:具有属性和行为的个体

    类(class):将多个具有相同性质属性和行为的对象,抽象出类

    成员函数可以直接访问成员变量

    实例化对象

        实例化栈对象
        实例化堆对象


类的修饰访问符

    public:公共权限
        可以在类外访问

    private:私有权限
        默认情况下所有类成员都是私有权限
        如果想要访问私有权限,需要在公共权限设置函数

    protected:保护权限
        与私有权限一样,类外不可访问

    什么是封装
        定义一个类

    设置类的私有成员有什么好处
        设置可读可写的权限
        

类的默认函数

    类的默认函数有哪些
        构造函数:classname(){ }
            默认生成构造函数
            创建对象时初始化对象的数据
            在实例化对象时会自动执行构造函数
            可以在构造函数中初始化类成员
            构造函数可以传参,重载
        

        析构函数:~classname(){ }
        默认生成析构函数
            销毁对象时清除对象的数据,释放所占的空间
            析构函数没有参数,不可以重载
            一个类有且只有一个析构函数


        拷贝构造函数
            默认生成拷贝构造函数
            是特殊的构造函数,是构造函数的重载
            参数为类的常引用
                (const 类名 & 参数名)

        浅拷贝和深拷贝
            浅拷贝:当有指针指向了一块空间时,复制的指针也指向这块空间
            深拷贝:重新申请一块内存空间,将拷贝的指针指向的内容也复制到新的空间中

explicit关键字

    可以屏蔽隐式调用(直接赋值)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值