上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 23 下一页
摘要: 使用的时候打开方式要指定ios::binary 二进制方式写文件主要利用流对象调用成员函数write函数原型 :ostream& write(const char * buffer,int len);参数解释:字符指针buffer指向内存中一段存储空间。len是读写的字节数 ofstream o ; 阅读全文
posted @ 2022-04-11 15:59 纸包鱼 阅读(77) 评论(0) 推荐(0)
摘要: c++的文件处理也是看为一个对象,使用文件流的类,使用头文件<fstream>,处理的时候有文本文件和二进制文件之分,主要的区别就是存储的形式 操作文件有三个大类,ofstream,写文件,ifstream,读文件,fstream,读写文件 使用时首先要用这三个大类来创建流对象,然后使用open打开 阅读全文
posted @ 2022-04-11 15:50 纸包鱼 阅读(306) 评论(0) 推荐(0)
摘要: 主要是为了解决多态使用时子类有属性开辟到堆区的问题 解决方式:将父类中的析构函数改为虚析构或者纯虚析构 虚析构和纯虚析构共性:可以解决父类指针释放子类对象都需要有具体的函数实现虚析构和纯虚析构区别:如果是纯虚析构,该类属于抽象类,无法实例化对象 虚析构语法:virtual ~类名(){}纯虚析构语法 阅读全文
posted @ 2022-04-10 23:00 纸包鱼 阅读(111) 评论(0) 推荐(0)
摘要: 在多态中,父类的虚函数实际上没啥用,主要在使用子类中自己重写的函数 所以这个虚函数可以直接写成纯虚函数 virtual 返回值类型 函数名 (参数列表) = 0 如果类中有了纯虚函数,那就成了抽象类,抽象类无法实例化对象,且子类必须重写纯虚函数 因为如果实例化了对象,那么这个纯虚函数就会因为无法调用 阅读全文
posted @ 2022-04-10 22:21 纸包鱼 阅读(22) 评论(0) 推荐(0)
摘要: 在基类中使用虚函数的时候,空类占一个字节,空类中有虚函数有四个字节,也就是说明虚函数在空类中加入了一个指针对象 这个指针叫vfptr,virtual function ptr,虚函数表指针,指向的是虚函数表vftable,就像之前提的那样,这个虚函数表中保存的是当前这个虚函数的地址。 当从基类生成子 阅读全文
posted @ 2022-04-10 21:33 纸包鱼 阅读(32) 评论(0) 推荐(0)
摘要: 多态是C++面向对象三大特性之一多态分为两类静态多态: 函数重载 和 运算符重载属于静态多态,复用函数名动态多态: 派生类和虚函数实现运行时多态 静态多态和动态多态区别:静态多态的函数地址早绑定 - 编译阶段确定函数地址动态多态的函数地址晚绑定 - 运行阶段确定函数地址 比如 void DoSpea 阅读全文
posted @ 2022-04-10 21:16 纸包鱼 阅读(48) 评论(0) 推荐(0)
摘要: 两个派生类继承自同一个基类 又有某个类同时继承两个派生类 这种继承被称为菱形继承 这种继承会有一个问题,就是最后一个继承时,会将最开始的基类复制两次 所以在两个父类有相同数据的时候,要通过作用域进行区分 为了彻底解决这个问题,可以使用虚继承,在继承方式前加virtual。class person : 阅读全文
posted @ 2022-04-10 20:55 纸包鱼 阅读(48) 评论(0) 推荐(0)
摘要: c++支持一个类支持多个类 class 子类:继承方式 父类,继承方式,父类 不过这样会导致重名等问题变得很麻烦,要在使用是指定参数所在定义域,所以一般不推荐使用 阅读全文
posted @ 2022-04-10 20:39 纸包鱼 阅读(22) 评论(0) 推荐(0)
摘要: 静态成员和非静态成员处理一致,静态成员类内声明,类外初始化,只有一个值,因为虽然同名,但是因为作用域不同,所以两者本质上并不相同。 可以通过对象访问,也可以通过类名的方式访问 阅读全文
posted @ 2022-04-10 20:32 纸包鱼 阅读(19) 评论(0) 推荐(0)
摘要: 同名成员属性的时候直接调用的是自身的数据,也就是this直接指向的数据 调用父类的数据要加作用域,同名的函数也与之类似,同时注意,只要子类中存在于父类中同名的成员函数,那么子类的同名成员会隐藏父类的所有同名成员,包括重载函数。因此,调用父类中同名的重载函数时,也需要加一个作用域 s.Base::m_ 阅读全文
posted @ 2022-04-10 15:32 纸包鱼 阅读(54) 评论(0) 推荐(0)
上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 23 下一页