![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
Peter9412
一个比较菜的程序员
展开
-
模板语法和目的
模板C++里面两种编程思想:1.面向对象;2.泛型编程思想函数模板的语法template函数声明或定义函数模板的目的对不同类型实现同一功能时的通用性。其中T表示通用的数据类型举例#include <iostream>using namespace std;void SwapInt(int &a, int &b) {原创 2021-11-28 17:11:34 · 384 阅读 · 0 评论 -
2021-11-14注册字符设备和字符设备驱动
注册字符设备首先应该定义两个结构体:1.字符设备结构体,2.对应文件操作的结构体1.字符设备结构体如下:struct cdev{ struct kobject kobj;//表示该类型实体是一种内核对象 struct module *owner;//填THIS_MODULE,表示该字符设备从属于哪个内核模块 const struct file_operations *ops;//指向空间存放着针对该设备的各种操作函数地址 struct list_head list;//链表指针域 dev_原创 2021-11-14 15:59:09 · 233 阅读 · 0 评论 -
2021-10-25
虚析构和纯虚析构多态使用时,如果子类中有属性开辟到堆区,由于父类指针或引用指向子类对象,因此释放父类指针时会造成无法调用子类中的析构代码,即父类指针在析构时,不会调用子类中析构函数,导致子类如果有堆区属性,出现内存泄露。解决方法:将父类中的析构函数改为虚析构或者纯虚析构利用虚析构可以解决 父类指针释放子类对象时不干净的问题。纯虚析构即令虚析构=0进行声明,然后在类的外部需要具体的实现以防父类中有些堆区数据要释放。这一点纯虚析构与纯虚函数不一样,有了纯虚析构之后(就算没有纯虚函数),这个类也属于抽象类原创 2021-10-25 17:41:36 · 67 阅读 · 0 评论 -
多态中虚函数与纯虚函数
多态中虚函数与纯虚函数多态是指函数名以及返回类型和参数都一样的函数在派生类中达到不同的功能。多态的条件:1.继承关系;2.子类中必须重写父类中虚函数。使用多态要求:父类的指针或者引用指向子类的对象,此时在调用内部虚函数即可。其中虚函数以及纯虚函数都可以达到这个作用,两者区别在于:虚函数在父类(基类)中可以实现自己的定义,而纯虚函数在父类中直接=0;此外,纯虚函数的类为抽象类无法实例化对象,并且子类中必须重写虚函数,否则子类也无法实例化对象。虚函数的类则可以实例化对象,并且子类中必须重写虚函数才能使用原创 2021-10-25 16:01:06 · 152 阅读 · 0 评论