- 博客(13)
- 收藏
- 关注
原创 c++多继承与虚继承
多继承就是存在两个以及两个以上父类权限问题和构造函数和单继承一样的,因为上一章(c++继承和派生)已经讲完,所以这里就不再过多赘述了菱形继承是因为多继承存在问题而衍生的继承方式(菱形继承就是虚继承)(题目可能会出现,但是自己写代码不会出现) 这里我们需要认识一个新的东西,virtual 是一个新的关键字,具体内容会在虚函数中讲到...
2022-06-16 14:14:13 1473
原创 C++继承和派生
继承方式与权限问题继承实质与权限问题 继承的实质: 父类的数据和成员子类中有一份 权限问题: 继承方式只会增强父类属性在子类中的权限显示 public protected private public继承 public protected private(不可直接访问) protected继承 protected protected private(不可直接访问) private继承 private p.
2022-04-27 22:00:34 1579 2
原创 c++特殊运算符重载
++ --运算符重载解决问题:前置和后置的问题:增加无用参数 int去表示当前运算符重载是后置操作文本重载 (新标准中的,稍微落后一点开发工具不适用) 其他运算符 = () -> [] 只能采用类的成员函数形式重载 流重载采用友元方式 . (点运算符) .*(点星号运算符) ?:(三目运算符) ::(作用域运算符)不能重载 对象隐式转换 我们在使用循环的时候,特别会用到前缀加加或者后缀加加操作,但是,我们也可以通过...
2022-03-30 14:06:01 1103
原创 c++运算符重载与输入输出流重载
运算符重载运算符重载——赋予运算符具有操作自定义类型数据功能运算符重载本身也是一种函数,我们有两种写法——友元类运算符重载函数和类运算符重载 运算符重载的实质本身就是函数调用 我们要注意它的写法: 函数返回值 :运算完成后的值决定的 函数名 : operator 加上重载运算符组成函数名 例如operator+就是重载加号 参数 :看运算符的操作数,具体参数个数是要看你重载函数形式是什么 函数体 : 写运算符具体想要...
2022-03-24 21:51:54 7870 9
原创 c++友元类与this指针
友元友元, friend描述的关系。友元只是提供一个场所,赋予对象具有打破类的权限定(无视权限) 友元函数 普通友元函数 以另一个类的成员函数充当友元函数,顺序如下: B 类 A 类 A类的友元函数(B类的成员函数) 友元类 ...
2022-03-22 18:09:14 2175
原创 c++类特殊成员——常成员与静态成员
const成员 const数据成员 const类型变量是不可以修改,只读模式 必须采用初始化参数列表方式进行初始化 const成员函数 写法上, const写在函数名后面 常成员函数是不能够修改数据成员,只读数据成员 常成员函数可以与普通函数同时存在 普通函数和常成员函数相同时,普通对象优先调用普通函数,并且无法强制让普通对象调用常成员函数 普通对象可以调用常成员函数(当不存在相同函
2022-03-20 14:07:01 1327
原创 c++拷贝函数——深浅拷贝
拷贝构造函数 拷贝构造函数也是构造函数,长相和构造函数一样的,只是参数是固定 拷贝构造函数唯一的参数是对对象引用 不写拷贝构造函数,也存在一个默认的拷贝构造函数 拷贝构造函数作用: 通过一个对象去初始化另一个对象 思考问题 什么时候调用拷贝构造? 当通过一个对象去创建出来另一个新的对象时候需要调用拷贝 拷贝构造什么时候需要加const修饰参数? 当存在匿名对象赋值操作的时候,必须要const修饰
2022-03-19 23:47:07 4989 2
原创 C++类的构造和析构
构造函数 我们如果要了解类的构造函数是什么,就需要问自己以下几个问题。 构造函数长什么样子? 1,函数名和类名相同 2,没有返回值(函数类型是 void类型) 3,如果不写构造函数,任何类中都存在一个默认的构造函数 默认的构造函数是无参的。 当我们自己写了构造函数,默认的构造函数就不存在 构造函数在构造对象的时候调用 delete可以用来删掉默认的函数 指定使
2022-03-19 15:00:10 663 2
原创 c++类和对象基础知识
类和对象的基本概念 什么是类,一系列事物的抽象,万物皆可为类 类是有两部分组成: 属性 行为 属性: 事物的特征--->数据类型描述 行为: 事物的操作--->函数描述 什么是对象: 类的具体化,类的实例化. 类的特点: 封装,继承/派生,多态 类的定义 创建语法 以下代码紫色部分需要大家牢记,并且记住三个不同的限定词的作用 class 类名{ //权限限定词 public.
2022-03-18 19:18:06 1052 3
原创 c与c++的区别(二)结构体区别、new与delete、内存池、string类型
结构体区别 类型上不再需要struct关键字,直接用结构体名即可 C++结构体中允许函数存在 在结构体中声明,在结构体外实现,当然可以直接在结构体中实现 结构体中函数访问数据,是可以直接访问 学会调用,和数据成员方式时一样的 对象(结构体变量).成员 对象指针->成员 (*对象指针).成员(装杯用法) C++在没有写构造函数和权限限定的时候,用法和C语言的用法是一
2022-03-18 10:17:40 412
原创 c与c++的区别(一)头文件和空间名、基本输入输出、新数据类型、函数思想
头文件与命名空间 创建源文件是.cpp 文件,头文件不变,依旧是.h文件 包含头文件的方式 包含自己的头文件没有任何区别 #include "myHead.h" 包含库目录 C语言中的: 采用原来方式包含可以,可以用C++包含方式,去掉.h 加个c iostream C++标准输入输出流的头文件 命名空间的引入 命名语法 //1.基本创建空间方法namespace 空间名{ i
2022-03-17 19:39:58 563 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人