![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 61
蒙蒂锅巴
这个作者很懒,什么都没留下…
展开
-
C++模板的高级用法
模板的嵌套调用,并组合了函数指针数组模板,在一些复杂的应用场合能起到非常好的效果;原创 2023-01-17 15:45:07 · 350 阅读 · 0 评论 -
C++引用的数组在模板中的巧妙运用
2.template会动态编译,自动推断a的大小,由于已经知道了数组的长度,因此该函数可以自动推断出字符串的长度。array首先向右结合,所以这个相当于 (int&)array[] array是个数组,其中的元素是引用。1.整个char数组不会作为指针,而是作为数组被引用 ,因而,sizeof可以获得整个数组的长度。可见,即使没有传入具体的大小,也可以利用模板的动态联编的特性,推断出传入的数组的具体大小;array首先和&结合,所以array是引用,引用的对象是数组。原创 2023-01-17 14:20:41 · 641 阅读 · 0 评论 -
C++11智能指针
在初始化 shared_ptr 智能指针时,还可以自定义所指堆内存的释放规则,这样当堆内存的引用计数为 0 时,会优先调用我们自定义的释放规则。在某些场景中,自定义释放规则是很有必要的。比如,对于申请的动态数组来说,shared_ptr 指针默认的释放规则是不支持释放数组的,只能自定义对应的释放规则,才能正确地释放申请的堆内存。//指定 default_delete 作为释放规则//自定义释放规则} //初始化智能指针,并自定义释放规则});原创 2023-01-05 13:24:48 · 1062 阅读 · 0 评论 -
嵌入式linux开发板USB功能测试 Sigmstar星辰科技SD222D
一、内核配置首先需要配置内核,进入kernel文件夹,执行指令make menuconfig进入图形化界面Devices Drivers—>[*]USB supprot---->[M]USB Gadget Support ---->[M] USB Gadget Drivers[M] Serial Gadget (with CDC ACM and CDC OBEX support)保存到.config文件,我用的是sigmarstar的222D板子,内核装载的时候,先默认保存原创 2022-02-17 16:00:04 · 2162 阅读 · 2 评论 -
C++中虚函数和纯虚函数的区别与总结
C++中虚函数和纯虚函数的区别与总结首先:强调一个概念定义一个函数为虚函数,不代表函数为不被实现的函数。定义他为虚函数是为了允许用基类的指针来调用子类的这个函数。定义一个函数为纯虚函数,才代表函数没有被实现。定义纯虚函数是为了实现一个接口,起到一个规范的作用,规范继承这个类的程序员必须实现这个函数。1、简介假设我们有下面的类层次:class A { public: virtual void foo() { cout<<"A::f原创 2021-09-08 10:47:24 · 137 阅读 · 0 评论 -
构造函数初始化
转载:https://blog.csdn.net/qq_16445683/article/details/485176391、构造函数初始化列表和构造函数体内赋值class Animal{public: Animal(int weight,int height): //A初始化列表 m_weight(weight), m_height(height) { } Animal(int weight,int height) /原创 2021-06-02 17:47:32 · 954 阅读 · 0 评论