- 博客(41)
- 收藏
- 关注
原创 CPP-存储区域
堆区的内存分配和释放是手动的,因此程序员需要负责管理内存,以避免内存泄漏或野指针等问题。此外,使用const关键字声明的全局变量,如果其值在编译时就已确定,也可能存储在常量区。举例说明:全局变量(在函数外部声明的变量)和静态变量(使用static关键字声明的变量,无论是在函数内部还是外部)都会存储在这个区域。在C++中,内存存储通常可以大致分为几个区域,这些区域根据存储的数据类型、生命周期和作用域来划分。举例说明:当你编译一个C++程序时,所有的函数定义、控制结构等都会被转换成机器指令,并存储在代码区。
2025-01-27 21:50:38
431
原创 泛型编程-
如果函数模板的参数类型不是模板参数类型,或者模板参数类型被用于非关键位置,编译器可能会进行隐式类型转换。在这个例子中,print函数模板的参数类型是模板参数T。当调用print函数时,编译器会根据传入的实参类型推导T的类型。如果传入的实参类型与函数内部的某些操作不匹配,编译器可能会进行隐式类型转换。//T被推导为doubleprint('c');//T被推导为char//T被推导为constchar*在这些调用中,T的类型分别是doublechar和。
2025-01-16 23:46:48
918
原创 结构体与联合体
联合体是一种强大的工具,可以用于节省内存、实现复杂的内存布局和解析二进制数据。通过合理使用联合体,可以编写更高效、更灵活的代码。然而,使用联合体时需要特别注意类型安全和内存管理,以避免潜在的错误。结构体:用于组合多个不同类型的数据成员,形成一个逻辑上的整体。成员在内存中是连续存储的,可以同时访问所有成员。联合体:用于节省内存,多个成员共享同一块内存。同一时间只能存储一个成员的值,访问一个成员的值会覆盖其他成员的值。通常用于实现类型安全的联合体、位字段和硬件寄存器映射。
2025-01-16 17:48:37
629
原创 指针CPP
可以使用typedef或using来定义函数指针的类型,使代码更简洁、易读。// 使用typedef// 使用using(C++11及以上)这里定义了一个名为FuncPtr的函数指针类型,它指向一个无参数、无返回值的函数。然后可以使用FuncPtr来声明函数指针变量ptr,并将其初始化为指向func函数。
2025-01-16 17:26:27
738
原创 CPP——智能指针
适用于需要独占资源的场景,自动管理内存,禁止拷贝,只能移动。:适用于资源需要被多个对象共享的场景,自动管理内存,使用引用计数,线程安全。:用于解决之间的循环引用问题,提供弱引用,不增加引用计数。通过合理使用这些智能指针,可以有效避免内存泄漏和悬挂指针等常见问题,使代码更加安全和易于维护。Valgrind 是一个内存调试工具,可以检测内存泄漏、未初始化的内存读取、越界访问等问题。
2025-01-09 23:03:40
710
原创 磁盘容量(自用)
磁盘的容量单位常用的有M,G,T这三个等级,它们之间的换算关系为1T = 1024G,1G = 1024M,现在给定n块磁盘的容量,请对它们按从小到大的顺序进行稳定排序,例如给定5块盘的容量,1T,20M,3G,10G6T,3M12G9M排序后的结果为20M,3G,3M12G9M,1T,10G6T。注意单位可以重复出现,上述3M12G9M表示的容量即为3M+12G+9M,和12M12G相等。
2025-01-03 19:39:27
236
原创 视频目标检测和静态场景抑制--GMM
基于视频的目标检测任务不同于单帧图像的目标检测任务,它需要检测出视频序列的每一帧图像里的目标。由于在某些帧中的目标质量较差,包括图像模糊、遮挡等,而且形状、尺度等属性会随着目标的运动发生变化,会造成某些帧的检测结果不正确。在检测过程中最大的困难就是如何保持视频中目标的时空一致性,即时间和空间位置发生变化的目标还是属于同一个目标,这就叫做时空一致性。由于视频比静态图像多了一个时间维度上的信息,所以大多数视频目标检测算法利用该信息来增强检测性能,最常见的思路就是使用其他帧的特征来增强关键帧的预测效果。
2024-04-30 22:10:04
336
1
原创 蓝桥杯基础实验ex1.11 定时器基本功能实验
掌握 STM32L071 微控制器 LPTIM 定时器的使用方法。产生 400ms 的计时中断,在中断服务程序。掌HAL 库的 LPTIM 各类接口函数。功能 计数器模式下中断处理函数。中,切换指示灯 LD5 的状态。系统时钟采用16MHz时钟,参数 htim。
2023-01-11 00:15:00
131
原创 蓝桥杯基础实验ex1-GPIO输出实验
此参数可以是GPIO_PinState枚举值之一:GPIO_PIN_RESET:清除端口引脚;GPIO_PIN_SET:设置端口引脚。GPIO_Pin指定要写入的端口位。此参数可以是GPIO_PIN_x之一,其中x可以是(0..15)。所有端口位不一定在所有GPIO上都可用。GPIOx 其中 x 可以是(A..E 、 H)来选择 STM32L0xx 系列设备的 GPIO 外设。掌握 STM32L071 微控制器 GPIO 的初始化配置。设置或清除选定的数据端口位。keil5 程序编写。
2023-01-08 12:54:44
94
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人