logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

第三章 异常(一)

核心思想:将资源的释放逻辑封装到析构函数中,利用析构函数 “自动调用” 的特性,避免手动释放资源的遗漏或异常导致的泄露(RAII 原则);关键做法:不要直接管理裸资源,而是用对象(如自定义资源管理类、标准库智能指针)包裹资源,让对象的生命周期与资源绑定;实践推荐:优先使用 C++ 标准库提供的智能指针(),而非手写资源管理类,避免重复造轮子且更安全。

#c++
学习OpenCV(2)--- 图像基础容器Mat

Mat是一个类,由两个部分组成:①矩阵头(包含矩阵尺寸、存储方法、存储地址等信息)。②一个指向存储所有像素值的矩阵(根据所选存储方法的不同,矩阵可以是不同的维数)的指针。矩阵头的尺寸是常数值,但矩阵本身尺寸会依图像的不同而不同,通常比矩阵头的尺寸大数个数量级。OpenCv使用了引用计数机制。其思路是让每一个Mat对象有自己的信息头,但共享同一个矩阵。这通过让矩阵指针指向同一地址而实现。

#opencv
Qt 绘图

Qt的二维图形绘制基本上是使用QPainter在绘图设备上绘图,绘图设备包括QWidget、QPixmap等,通过绘制一些基本的点,线、圆等基本图形,得到的图形是不可交互操作的图形。1.QPainter与QPaintDeviceQt的绘图系统基于QPainter、QPaintDevice、QPaintEngine类。QPainter 是专门用来绘图操作的类,QPaintDevice是使QPaint

文章图片
#qt
QScrollArea类和QSroller类的简单介绍

如果内容是自定义绘制(而非子部件),可继承QWidget重写paintEvent// 自定义绘制的内容部件protected:// 绘制大量内容(超出视口)i < 50;++i) {painter.drawText(10, 20 + i*30, QString("自定义绘制行 %1").arg(i+1));// 使用// 固定内容大小(超出滚动区域)类适用场景核心优势基础滚动需求(如固定内容、简单

#qt
Qt中QProxyStyledrawControl函数4个参数的意义

参数意义用途element“画什么?指定要绘制的控件类型(按钮、复选框等)。option“用什么状态画?提供控件的大小、状态、文本等所有必要信息。painter“用什么工具画?提供执行实际绘制命令(画矩形、文字等)的工具。widget“为谁画?(可选)提供控件本身的引用,用于获取更高级或特定的信息。通过组合使用这四个参数,你可以完全自定义 Qt 应用程序中几乎所有标准控件的外观。

#qt
数据结构---B+树

B+树是一种平衡的多路查找树,是数据库和文件系统中常用的索引结构。

#数据结构
MFC中使用DAO来打开数据库

最近在学习MFC中数据库的使用,在之前写过一篇使用使用Access技术连接数据库。在这个项目中打开的是.mdb数据库文件。ODBC是数据库的连接接口,他不管连接是何种数据库,在程序运行过程中都会提供选定数据库的引擎。点击打开MDB文件后,选择要打开的MDB文件,然后显示数据库中的表,如图所示。这个例子的思路是:在文档类中打开数据库,并读取其中的数据,然后保存起来。这个例子中其中CDAOTestVi

文章图片
#数据库#mfc#c++
内存池的介绍与经典实现

内存池介绍与经典内存池的实现

文章图片
#c++
C++线程池

C++线程池

#c++
到底了