摘要:
子类继承父类后,当初始化和销毁时,父类中的数据初始化和销毁会由父类的构造和析构函数进行 顺序是先构造父类成员,再构造子类成员,先销毁子类成员,再销毁父类成员 阅读全文
posted @ 2022-04-10 13:14
纸包鱼
阅读(108)
评论(0)
推荐(0)
摘要:
继承方式有公共继承,保护继承,私有继承,对应三种不同的权限 注意,基类中的私类不管什么权限都不可继承,继承的其他权限与继承方式取最严权限 简单说就是继承的方式无法决定继承的内容,只能决定继承过来后的权限 但是在继承的时候,子类会继承父类的静态成员外的所有数据,哪怕是私有数据也是一样,只不过继承后编译 阅读全文
posted @ 2022-04-10 13:09
纸包鱼
阅读(44)
评论(0)
推荐(0)
摘要:
继承是面向对象三大特性之一 子类继承父类代码,减少重复的代码 class persona :public person {} class 子类 :继承方式 父类 这样编译器在编译的时候就可以将person中public的部分展开到persona中,子类也可以叫派生类,父类也可以叫基类 阅读全文
posted @ 2022-04-10 12:36
纸包鱼
阅读(24)
评论(0)
推荐(0)
摘要:
c++编译器至少给一个类添加4个函数1. 默认构造函数(无参,函数体为空)2. 默认析构函数(无参,函数体为空)3. 默认拷贝构造函数,对属性进行值拷贝4. 赋值运算符 operator=, 对属性进行值拷贝 这个重载主要是为了防止有堆区的时候会有重复删除地址的问题,所以要有重载函数,进行深拷贝 跟 阅读全文
posted @ 2022-04-10 12:03
纸包鱼
阅读(69)
评论(0)
推荐(0)
摘要:
要注意递增递减运算符有前置和后置的问题,使用类内定义,在形参上使用给一个int站位符,编译器会把有占位符的定义为后置,前置运算正常进行,返回一个引用 后置运算要返回一个值,而不是引用,因为实际的值已经改变了,返回的值是一个改变前的,因为这个值是用局部变量保存的,所以不能返回引用,因为相同的原因,在调 阅读全文
posted @ 2022-04-10 11:44
纸包鱼
阅读(57)
评论(0)
推荐(0)
摘要:
因为cout在左边,所以<<重载一般只能用全局函数,同时输入person和输出流变量ostream,因为输出流变量ostream是一个全局只有一个的静态变量,所以必须要用引用的方式使用。同时为了实现链式编程,返回值依旧是ostream& 重载运算符配合友元可以实现自定义类型的输出 ostream&o 阅读全文
posted @ 2022-04-10 11:06
纸包鱼
阅读(409)
评论(0)
推荐(0)
摘要:
对已有运算符进行重新定义,赋予其另一种功能。 在类内创建函数,函数名为operator运算符,person operater+ (person &p),通过成员函数重载+ 在类外创建成员函数,作为+函数的一个重载版本 person operater+ (person &p1,person &p2) 阅读全文
posted @ 2022-04-10 10:46
纸包鱼
阅读(123)
评论(0)
推荐(0)
摘要:
友元的目的是让一个函数或者类访问另一个类中的私有成员,本质,是让其它不属于本类的成员(全局函数,其它类的成员函数),成为类的成员而具备了本类成员的属性。 友元函数是可以直接访问类的私有成员的非成员函数。它是定义在类外的普通函数,它需要在类的定义中加以声明,声明时只需在友元的名称前加上关键字frien 阅读全文
posted @ 2022-04-10 10:03
纸包鱼
阅读(98)
评论(0)
推荐(0)

浙公网安备 33010602011771号