自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

bin_bang的博客

天下有志者共赏

  • 博客(38)
  • 资源 (2)
  • 收藏
  • 关注

原创 Qt源码解读(一)Windows消息循环和事件循环机制

事件循环

2022-11-13 17:11:16 950

原创 Qt事件循环源码解读

4.调用系统获取消息接口: haveMessage = PeekMessage(&msg, 0, 0, 0, PM_REMOVE);1.进入QEventLoop::exec(ProcessEventsFlags flags)函数。从事件队列里面获取事件,然后对事件进行处理。5.分发事件:TranslateMessage(&msg);6.加入事件队列后,循环这个事件处理过程。

2022-10-24 11:07:23 318 1

原创 VS2019 Qt源码编译

我是想在Qt creator和vs2019上调试Qt源码,更好地理解框架原理。总体来说,生成qt源码并不难,可能安装的过程中会有一些其他问题。包括以下步骤:1.下载安装编译源码工具 2.调用命令生成可执行文件qmake.exe 3.设置Qt版本,调试环境。4.新建项目进行调试。

2022-09-25 15:50:33 872

原创 Qt多线程管理

思考:1.线程的概念 2.为什么要使用线程 3.线程的分类及优劣比较在一个程序中,这些独立运行的程序片段叫作“线程”(Thread),可以并发执行,提高整体处理性能。

2022-07-02 17:47:17 699

原创 QGraphicsView、QGraphicsScene、QGraphicsItem的应用

思考:1.QGraphicsView、QGraphicsScene、QGraphicsItem的概念和联系 2.为什么要使用这种组合?3.如何使用? 4.怎么优化?可以展示QGraphicsScene内容的控件。`QGraphicsSceneQGraphicsScene 就像是给QGraphicsItem对象提供服务的容器。具有以下特点:1.快速管理大量的item对象2.传播事件中介3.管理item的状态,比如选中聚焦等等。QGraphicsItem是最基本的对象,它有几种派生类:QGraph

2022-06-28 12:00:30 418

原创 C++串口通信原理

1.检查注册表,获取串口列表RegOpenKeyEx、RegEnumValue2.依次检测每个串口,直到找到可用的串口

2022-06-21 11:48:42 388

原创 Qt Meta-Object 系统

思考:1.Qt的元对象系统是什么?2.为什么Qt要建立元对象系统?3.元对象系统是怎么运行的?4.有没有类似或者更好的实现框架?5.Qt的元对象系统怎么使用更优?Meta-Object元对象系统1.Qt的元对象系统是什么?由QObject或者它的子类、私有部分的Q_OBJECT、Meta-Object Compiler (moc)元对象编译器组成。2.为什么Qt要建立元对象系统?利用tr翻译、信号槽、动态属性、运行时类型转换qobject_cast、RTTI信息。3.元对象系统是怎么运行的?struc

2022-06-09 18:10:25 148

原创 C++ h、cpp、hpp文件的差别

h文件写声明cpp文件写实现hpp文件写模板,声明和实现写在一起

2022-06-02 18:56:10 477

原创 Qt入门环境安装

Index of /https://download.qt.io/ 以上就是VS2019QT开发需要的资源。将以上资源安装好,还有2019就可以进入Qt开发了。

2022-06-01 21:16:51 80

原创 IIS发布Mysql数据库连接问题Authentication method @caching_sha2_password@ not supported by

Mysql数据库连接问题Authentication method @caching_sha2_password@ not supported by

2022-03-16 11:22:22 1232

原创 通过MySQL Installation Wizard安装MYSQL80服务忘记密码,重置密码,另一版本

新建文本C:\mysql-init.txtzb换成你的密码mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 8.0\\my.ini" --init-file=C:\\mysql-init.txt --console删除C:\mysql-init.txt关闭该cmd 窗口,目的是杀掉mysqld进程,其他方式也可以打开另一个cmd 窗口大功告成,累并快乐,加油~官方文档:MySQL :: M...

2021-11-19 02:34:59 528

原创 Win10 系统MySQL8.0.19 忘记管理员密码,重置新密码,无效@Me

前记:百度回答有些有效,但是每个人的数据库环境不一样,请按照我的操作一步一步来。数据库安装包:操作系统:win10 64位首先使用管理员权限登录CMDwin + R 唤出运行如果不是管理员,则用Ctrl + Shift + Enter 进入,否则直接Enter查看现有进程是否含有mysqltasklist | findstr mysql 一律杀死Mysql进程即可taskkill能查杀进程,语法很简单:tsakkill /f /pid 进程ID,正常 net s..

2021-11-19 01:14:21 1130 1

原创 Mysql 更改root权限

进入 Mysql workbench输入select * from mysql.user;

2021-11-16 16:16:01 1015

原创 Vue项目初体验

安装教程参考官方文档:CLI 服务 | Vue CLI重点:1.安装正确的vue cli 版本,如果是版本3.x,用以下卸载和重装语句卸载语句:npm uninstall -g @vue/cli安装语句:npm install -g @vue/[email protected]:node package manager (node 包管理器),也可以用淘宝镜像cnpm2.切换到正确的项目路径,然后vue ui 创建项目或者 vue create 项目名3.接下来就看着这个项目操作就行.

2021-11-16 16:12:42 624

原创 Qt打印预览的时候打印没有弹框,只显示导出pdf文件弹框

原因:缺少或者找不到打印模块所需要的dll文件。解决方法:将选择的Qt文件夹下的打印插件放到生成目录下。比如我本机的路径:F:\Qt5.14\5.14.0\msvc2017_64\plugins\printsupport\windowsprintersupport 。转载:https://forum.qt.io/topic/39319/solved-qprinterinfo-availableprinters-don-t-list-available-printers...

2020-12-25 16:19:00 452

原创 数据库ACID

今天,没什么事就来写写博客了,这回让我们来了解一下平时用的数据库事务的四个特性ACID.A:atomatic(原子性)C:consistency(一致性)I :isolation(隔离性,独立性)D:durability(持久性)事务的原子性是指整个逻辑过程是一个整体,不可分割;一致性是指数据库的表的约束,级联,触发器,要前后保持一致;持久性是指事务提交后,数据可重复读。最不容易理解的就是隔离性。首先,如果事务不设置隔离性就很可能在某些情况下会有问题。以下是可能出现的问题一、脏读

2020-11-15 22:23:54 75

原创 Windows10 mysql依据日志来恢复数据

必要语句show binlog events in "BIN-bin.000157";mysqlbinlog --base64-output=decode-rows -v ..\logbin\BIN-bin.000157mysqlbinlog ..\logbin\BIN-bin.000157 --start-position=1619 --stop-position=1840 |mysql -u root -pmysqlbinlog ..\logbin\BIN-bin.000157...

2020-10-11 17:27:49 341

原创 广州游玩攻略

一.海鸥岛 风景优美,海风很舒服,人少地多,适合四季游玩。交通路线:到地铁海傍站,转公交148B通往海鸥岛游客服务中心。

2020-08-30 10:23:07 149

原创 惠普Win10家庭版黑屏

现象:电脑黑屏,只显示鼠标,进入不了Win10桌面。直接原因:断电可能的根本原因:系统的有些重要进程没关闭,比如explorer.exe.解决方法:按shift + 电源键 关机 。重启电脑。

2020-07-13 09:55:08 319

原创 完成端口理解

问题:一.怎么让前后端通信?二.如果客户端请求数很多的时候,应该怎么处理?怎么才能保证服务器的稳定性?三.如何保证数据的准确性?四.内核态和用户态怎么切换?提高效率五.如何提高响应速度?以上的问题都可以由完成端口通信解决。避免了服务器的CPU多次切换线程异步通信:涉及到三方。应用程序、操作系统、网络IO操作。利用完成端口实现异步通信的机制:当应用程序的线程发送消息时,就把消息放进消息队列,即是完成端口,通知系统要进行网络操作,然后应用程序就去做其他事情,具体的网络通信就由操作系统

2020-07-07 16:41:18 363

原创 System.Data.SQLite.SQLiteException导致w3wp.exe IIS程序崩溃

直接原因:SQLite数据库临时文件.db-journal文件未能删除,导致异常发生。解决方法:在程序启动前先把.db-journal文件删除(本来SQLite的库是可以自己删除的,但是很特殊的情况它没有自己删除)。...

2020-06-10 09:10:56 774

原创 事件处理函数和事件监听器一样吗?

现实中的例子:自行车,自行车是如何转动前进的呢?1.Cause:人力,people strength(Biomass energy);2.Process:踏板pedal,曲柄crank,链条chain,齿轮gearwheel3.Result:轮子转动(动能)wheel whirling/rotate(Kinetic energy)。通过以上例子,我把事件触发和响应机制概括为CPR模式。首先外设输入或者页面产生事件,先放入windows消息系统事件队列,然后应用程序以异步的方式处理系统消息

2020-05-29 11:50:02 316

原创 拾起设计模式的利器

前言:我想对自己说,我做的应该是一个系统,而不应该只是功能的堆砌。回顾自己以前写的代码,感到非常惭愧,以后定当严格要求自己。目的:1.代码简洁优雅,富有层次,易于理解 2.降低耦合度,提高聚合度,提高复用性,易于扩展。预想:前端代码应该至少有三层:视图层、管理层、服务层。主题:MVC MVP MVVM 设计模式M:Model 数据模型、数据结构、数据类型,用户看见的数据内容V:View 视图,用户看见的界面,布局,组件C:Controller,用来控制视图和数据之间的处理逻辑和用户交

2020-05-12 15:23:04 127

原创 JavaScript Attentions

程序块作用域在每个代码块中 JavaScript 不会创建一个新的作用域,一般各个代码块的作用域都是全局的。以下代码的的变量 bin 返回 10,而不是 undefined:for (var bin = 0; bin< 10; bin++) {// some code}return bin;...

2020-05-08 18:18:45 136

原创 Java多线程之活动对象(行动者)

问题:1.如何让线程任务执行的时候不用防止线程中断?2.如何防止线程争夺资源导致死锁?3.如何让多个对象同时调用另一个对象的方法时不出现阻塞情况?活动对象是用一个工作线程维护消息队列的对象。活动对象的本质就是串行化任务。每一个时刻只有一个任务在执行。...

2020-03-14 23:23:34 192

原创 免锁容器

今日一笑:在不知不觉中,我们发现城市广告的重点已经从不孕不育转变为美容整形,原来大家都逐渐明白不能繁衍的病因是脸。目的:性能调优带同步锁的容器有:Vetor、Hashtable、以后开发的过程中遇到同步锁的容器要注意,这在非多线程中,会导致不可接受的开销。切记不能随便用。免锁容器:CopyOnWriteArrayList、ConcurrentHashMap、Concurren...

2020-03-02 23:06:07 210

原创 银行出纳员仿真

总体思想:运用PriorityQueue、ArrayBlockingQueue、TellerManager去模拟这个过程。细节:1.new一个继承了ArrayBlockingQueue<Customer>队列的对象CustomerLine customers,该队列的数量有限,模拟现实中顾客发现这个队列太长会离开。2.将 customers 队列添加进顾客生产者任务中。...

2020-02-27 23:18:55 222

原创 PriorityBlockingQueue和Semaphore思想

PriorityBlockingQueue基础的优先级队列,具有可阻塞的读取操作。PrioritizedTask是一个优先级数字(对象),用来提供将任务放入队列的顺序。该队列不需要显示的同步,因为在这个队列没有元素时,将直接阻塞读取者。很有趣的现象,队列连接生产者和消费者。生产者充当向队列写入数据的角色,消费者充当读取队列数据的角色。所以生产者和消费者任务要共享同一个PriorityBlo...

2020-02-23 17:20:28 179

原创 如何用浏览器调试网页前端代码?

首先简要介绍浏览器的调试器的组成按F12快速打开调试器

2019-09-18 15:26:04 1937

原创 工作一周感悟

学习目标:web应用网站发布、mybatis框架、数据库学习态度:不偏不倚,平常心学习方法:1、通过写mybatis第一个应用程序,发现框架就是用来提升效率的东西,我们不应该去怕它,而应该去了解它,使用它,完善它。同时,学习一个新技术,除了看百度、看别人写的博客之外,最有效率的方式是去看官网,去官网找文档。2、记录一个文件查找不到的错误,当时我就自以为是,然而浪费了很多时间,最有效率的方式...

2019-08-10 11:33:04 604

原创 用select语句的mybatis第一个应用程序

MyBatis第一个应用程序MyBatis:mybatis的使用逐渐上升,Hibernate使用逐渐下降。百度百科。本质是基于Java的持久层框架,通俗地讲就是访问持久状态的数据的一段程序,即是DAO.它的目的就是帮助程序员减少工作量和重复的代码编写,不用自己封装实体类。它的优点是代码量精简,编译代码较少,利用xml映射文件做应用程序访问数据库的接口,所以说它是半自动化的ORM框架。如何使...

2019-08-10 11:22:16 132

原创 前端精简学习

框架或语言 模块 字段 函数 功能 特点 缺点 ES6 var let setTimeout() 时间触发,间隔几秒触发功能 循环结束后才会触发这个函数,优先执行循环里的setTimeout() var定义的变量是全局变量 ...

2019-06-20 17:52:23 197

原创 如何学习Vue.js?

1.快速阅读一遍Vue.js的基础篇和进阶篇。2.仔细阅读基础篇,仿照上面的例子,每个知识点都敲代码,测试。3.学习Node.js,用时

2019-06-03 09:15:48 1406

原创 Vue入门

前言:vue是一种js框架,有良好的封装,及时响应,动态更新update,重新渲染Render界面,有很好的交互性。问题1:什么是vue?有哪些作用?答:vue是一种构建用户界面的渐进式框架。特点是易于上手,自底向上,易于与第三方库整合。Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统。除此之外,就是酷炫的组合的视图组件。问题2:如何学习Vue?...

2019-05-27 08:37:04 96

原创 告别低迷,绽放阳光

二十几年,风风雨雨,都在告诉我们一件事--前途是光明的,道路是曲折的。从小,父母就期盼着我们能够健康成长。如今,我们可以独立生活,摆脱对父母的经济依赖,甚至在不久的将来,可以给父母一些生活费。这个过程中,我们完成了从被抚养对象到孝顺父母的角色转换。百善孝为先,父母养育子女多年,最幸福的事情就是父母健在,我们子女有能力孝顺她们。任何的困难只是当时看起来有困难,当你坚持不放弃,直至实现这个目标后,...

2019-05-26 15:31:55 138

原创 开启博客之旅

CSDN的小伙伴们,大家好!很荣幸成为百万开发者中的一员,在这里,希望自己能够和大家一起成长! 开始这趟旅程的动机很简单,就是想在业余时间能够知识变现。接着,我看了本论坛中有关于网赚的几个方法,觉得受益颇深。 我本身有总结反思的习惯,所以借此宝地,用来记录生活中的点滴。读万卷书,行万里路。身体和灵魂总要有一个在路上。通过这种方式,充实自己的灵魂,改变自己...

2019-05-16 23:32:25 117

原创 和Java的今生依恋——从小白到大神的Java学习路线

话不多说,直奔主题!  L1·Java程序开发基础、系统分析与设计基础 W1 1.1 -Java开发环境 Java基础 http://how2j.cn?p=52977 1天 1.2-Java技术概述   1.3-Java语言基础、程序流程控...

2018-08-24 13:35:13 482 1

原创 如何解决“找不到FpdotLicense.dat”文件错误。

找了好几个网站平台都没说这个错误应该怎么解决。今天亲测有效,很简单,就直接删除license.licx文件。这个文件在properties文件夹下。如果大家还有不懂的我们继续交流。...

2018-08-23 10:43:29 3942 2

windows 内存泄漏检查

Vs2019,C++程序,使用detours钩子函数,检查malloc,free管理的内存。用哈希表存储堆栈信息。

2023-05-26

DBRename.sql

先建一个最新数据库名,然后把旧的数据库写一个存储过程,把上面的存储过程代码写进去,点击调用call reqReName("oldName","newName")

2020-07-27

用VC++Windows窗体应用程序编写的简易计算器

数据结构课程设计,用C++/CLR语言编写的Windows窗体应用程序,简易计算器。程序设计还是大二的时候学的,当时老师教的特别好。

2017-07-29

空空如也

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

TA关注的人

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