自定义博客皮肤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)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 C++创建型设计模式之 单例模式

单例模式就是在类的设计时,保证只能生成一个该类型的实例。比如在与硬件通信接口、数据库交互、全局参数处理等。

2024-04-08 10:21:19 680

原创 QtAlgorithms 非常用方法

uint qCountLeadingZeroBits(…) 多种参数重载,都是按无符号整型算的。uint qPopulationCount(quint8 v) 多种参数重载,算位数。是将容器里的指针进行 delete 析构,不是移出容器。本篇是䓍稿,看一眼就行了。

2024-03-27 18:44:59 159

原创 QtConcurrent非常用方法

filteredReduced(ConstIterator begin, ConstIterator end, FilterFunction filterFunction, ReduceFunction reduceFunction, QtConcurrent::ReduceOptions reduceOptions = UnorderedReduce |顺序减少)

2024-03-27 18:10:24 652

原创 C++创建型设计模式之 原型模式

对于较复杂的类型,我们在构造一个对象时当然可以用前面讲到的构造器模式或工厂模式来作为获取的方法,但在我们已知一个对象A和另一个对象B只有很小一部分的属性不同时,我们肯定会希望给A对象拷贝一份作为B,再将B对象相应的属性设置正确就行了。比如一对双胞胚姐妹,只有名字不同,在填完姐姐信息后,复制一份后再将名字修改成妹妹的便大功告成。根据原型模式的目的,关键的任务就是拷贝,但方法可不只有重写虚接口 clone() 一种。

2024-03-25 17:10:13 752

原创 QSqlDatabase 如何设置超时等属性

如果你使用 QSqlDatabase().exec(“Set global read_timeout=20”) 这样的,不一定有效,你可以试下 QSqlDatabase 自带的 setConnectOptions 接口。

2024-03-15 15:01:11 679 1

原创 C++创建型设计模式之 工厂模式

工厂模式一般不直接返回对象,因为返回对象时肯定会发生复制行为,那么在工厂内部是无法对已创建的对象进行相关行为的后期管理的。一般谁创建谁负责销毁,像以上例子里这样给别人一个裸指针,很可能造成使用者直接丢弃而没有被delete情况,所以返回智能指针要比裸指针安全很多。很多时候在工厂内部需要对已创建的对象进行监视,可以在工厂内存储所有已生成的对象,再定义接口获取,如果存储的为shared_ptr还可以查看外部对该对象引用的次数。

2024-03-10 22:04:02 915 1

原创 C++创建型设计模式之 构造器模式

对于大多数的类来说,直接使用构造函数便可得到想要的对像,对于复杂属性的类,可能多设几个构造函数,或构造函数多设几个参数也可能达到想要的结果。但对于复杂的对象有时还真是需要使用专门的构造器来获取适当对象。再说,对于C++开发来说,你搞个构造函数有七八个参数甚至更多,看你领导想不想批你!对的,构造器模式是按需生成别的类对像的方法,但构造器本身肯定也是类了,要在这类里设置如何生成指定对像呢。

2024-03-04 17:37:06 904 1

原创 vs下建QT项目如何用qDebug

项目配置:链接器-系统-子系统,调为控制台(console)如果是多个项目,设启动项即可。各加载项目中的qDebug()都可以正常输出。

2022-01-12 14:19:56 785 3

原创 warning C4819: 该文件包含不能在当前代码页....

warning C4819: 该文件包含不能在当前代码页....#借用notepad++网上其它方法我也都试了,都没解决,最后用notepad打开文件,点击编码能看到当前编码(我的是utf-8)。然后选择你vs要用的编码,我这是GB2312,看看里边有乱码没,如果有就说明问题在这了。还回原来的编码视图,全选-复制,转为GB2312编码视图,全选-粘贴-保存即可。...

2022-01-11 16:32:05 478

原创 库中调用GetModuleHandle(NULL)返回的是进程的实例句柄,而非本dll的

获取进程基地址时GetModuleHandle只返回进程的,如果想获取当前库的需使用GetModuleHandleEx今天本想获取加载的dll的基地址,调用GetModuleHandle()时总是得不到正确的结果,细看了下<<windows核心编程>>,里面说如果在DLL中执行GetModuleHandle (NULL),返回的是可执行文件基地址。获取DLL自身基地址需用GetModuleHandleEx (…);实测了下,果然…注意:exe项目和dll项目均为Unicode字符

2021-04-30 17:47:32 2262 1

原创 Qt5.7 #include 《QTcpServer》时编译报错,提示找不到该文件

Qt5.7 #include 《QTcpServer》时编译报错,提示找不到该文件问题描述问题描述网上多处高人指导说在Qt工程.pro文件加入QT += network后续可顺利进和地,但本人几番周折就是不行。模仿别人写成提示找不到,写成QT += network也不行,模仿Qt例程等多种写法都不行,最后写成问题得以解决,Who knows why?环境win7+64位+Qt creat5....

2019-05-07 18:00:17 3412 2

原创 C++ 扑克牌排序

问题说明扑克牌所有的面值有’A’,‘2’,‘3’,‘4’,‘5’,‘6’,‘7’,‘8’,‘9’,‘10’,‘J’,‘Q’,‘K’,‘Joker’,拍序的规则是四个的放一起,三个的放一起,对子放一起,个子放一起,无论是四个、三个、对子还是个子,内部都需按大到小排序,并且先排四个,再排三个,再排对子,再排个子。问题分析1、按不同的游戏规则,‘A’在所有面值中的大小是不固定的,可能比‘K’大,也...

2019-04-28 09:59:53 13178 1

DlgHookProj.rar

由于对话框被模态打开后,父对话框等消息都被屏掉,不能接收消息,而模态框本身又不能接收区域外消息,所以想到利用钩子技术。本例子vs2019编译,让测试对话框如菜单一样,在区域外点击时自动关闭。

2021-04-10

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

TA关注的人

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