自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 C++11之原子操作

c++11之原子操作

2025-02-26 14:31:23 914

原创 设计模式(四) --- 原型模式

public:public:// 使用拷贝构造函数克隆对象// 具体类的成员可在其构造中初始化,也可在clone方法中初始化或者赋值public :// 使用拷贝构造函数克隆对象 // 具体类的成员可在其构造中初始化,也可在clone方法中初始化或者赋值 return std :: make_shared < ConcretePrototype1 >(* this);int value;

2025-01-22 16:49:56 203

原创 设计模式(三) --- 构造器模式

构造器模式是一种创建型设计模式,它允许你通过一系列步骤构造复杂的对象,而不需要将所有参数都一次性传递给构造函数。这种模式在对象的创建过程中将组装对象的复杂性和表示对象的复杂性分离开来,从而使相同的创建过程可以创建不同的表示。

2025-01-16 16:55:19 748

原创 设计模式(五) --- 观察者模式

观察者模式(Observer Pattern)是一种行为设计模式,它允许对象(称为“观察者”或“订阅者”)在另一个对象(称为“主题”或“发布者”)的状态发生变化时得到通知并自动更新。观察者模式的核心思想是解耦主题与观察者之间的依赖关系,使得主题不需要知道具体的观察者对象,。

2025-01-14 13:58:32 315

原创 从硬解码原理看芯片超规格

理想情况下,在不考虑资源的情况下,H265 和 H264 之间的解码电路可以同时工作,所以在不考虑其他条件的情况下,可以同时解码 1路 H265 4K 和 1 路 H264 4K,相当于可以同时播放 2 路 4K。视频的硬解码能力确实依赖于硬件芯片的解码能力,但总体的解码性能也受到其他硬件组件的影响,特别是南北桥和内存。●因为内存的限制,我们不能简单的根据 6.2 的视频解码计算量来换算,所以需要测试出4k、1080p、720p、360p 等分辨率下,每个规格的路数限制。

2024-12-29 20:57:31 591

原创 设计模式(二) --- 工厂模式

工厂模式的主要作用是封装对象的创建,分离对象的创建和操作过程,用于批量管理对象的创建过程,便于程序的维护和扩展。工厂模式主要分为简单工厂模式(不属于GOF)和工厂方法模式。

2024-12-29 16:40:35 273

原创 设计模式(一)--- 单例模式

饿汉式在类加载时就创建实例,无需考虑线程安全问题(天生线程安全,因为实例在程序初始化阶段就被创建)。但是这种方式可能会造成资源的浪费,因为在某些情况下,对象可能根本不会被使用。单例模式有几种常见的实现方式,包括懒汉式、饿汉式,懒汉式是非线程安全的,下面将分别介绍以上这几种实现方式。懒汉式在第一次使用时创建实例,这种方式可以节省资源,但在多线程环境下需要考虑线程安全问题。以上各种实现方式中,大多数情况下,推荐使用静态局部变量的实现方式既简单又高效。

2024-12-05 22:09:04 367

原创 CRichEdit 实现文字竖排功能

Visual Studio C++ 之RichEdit 实现文字竖排功能

2022-07-26 11:34:25 40

原创 Excel如何导出自定义架构xml

一、Excel如何导出自定义架构xml打开需要操作的excel文件;选择菜单栏“开发工具”项;此时,如果发现“开发工具”菜单栏对应“导出”按钮不可用,可点击“源”按钮,页面右侧会弹出“xml源”小窗口;点击“xml源”小窗口最底下的“xml映射”按钮,添加自定义xml架构映射,添加完成后,在小窗口可预览自定xml架构;把“xml源”对应小窗口中的xml对应节点拖动到需要操作的excel单元格中(根据自定义xml架构的不同,单节点xml会自动选择单个单元格,多节点xml会默

2021-11-05 18:43:35 10880

转载 __stdcall相关内容

对_stdcall 的理解:在C语言中,假设我们有这样的一个函数:int function(int a,int b)调用时只要用result = function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参数,传递参数的工作必须由函数调用者和函数本身来协调。为此,计算机提供了一种被称为栈的数据结构来支

2021-04-10 12:21:58 175

原创 QDesktopServices创建临时目录

QDesktopServices类提供了访问常见桌面服务的方法。许多桌面环境提供的服务可被应用程序用于执行常见任务,例如打开web页面,其方式既一致又考虑到用户的应用程序首选项。该类包含向这些服务提供简单接口的函数,这些接口可以返回该服务是否调取成功的结果。openUrl()函数该函数用于打开外部应用程序中位于任意url的文件。对于与本地文件系统上的资源相对应的URL (URL模式为“file”),将使用合适的应用程序来打开该文件;否则,将使用web浏览器获取并显示该文件。使用openUrl()

2021-03-23 17:03:26 283

原创 QSignalMapper类有序处理多个类似信号

简而言之,可以把SignalMapper这个类看成是信号的翻译和转发器, 它可以把一个无参数的信号翻译成带int参数、QString参数、QObject参数或者QWidget参数的信号, 比如, 有一堆的button, 可以把clicked事件放在一个函数里处理, 只要给button编个号或者给button起个名就行了, 这样就不用给每个button写一个slot了,这样是不是就很方便了呢!下面用代码示例进行简单描述:比如在MainWindow的工具栏中创建多个Action。1. 在工程类构造中将转发的

2021-03-16 18:49:10 164

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除