自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (8)
  • 收藏
  • 关注

原创 C++ 敏感词过滤的算法之DFA算法

DFA简介DFA全称为:Deterministic Finite Automaton,即确定有穷自动机。其特征为:有一个有限状态集合和一些从一个状态通向另一个状态的边,每条边上标记有一个符号,其中一个状态是初态,某些状态是终态。但不同于不确定的有限自动机,DFA中不会有从同一状态出发的两条边标志有相同的符号。在这幅图中大写字母(S、U、V、Q)都是状态,小写字母a、b为动作。通过上图我们可以看到如下关系a b bS -----> U S -----> V U -----> V一

2020-12-08 10:06:13 1678

原创 NSIS安装或卸载时检查程序是否正在运行

转载:https://www.cnblogs.com/z5337/p/4766415.html转载:https://www.gongzi.org/nsisbuildqqstop.html转载:http://blog.sina.com.cn/s/blog_6aeaee7e0100smrn.html(如果当前程序正在运行,杀掉进程继续安装或者卸载,给了启发)转载:https://blog.csdn.net/llmys/article/details/88618177(教程)使用场景:如果我们要安装或升

2021-10-09 10:57:50 1706

原创 string和CString之间的转换

string-->CString CString CharToWChar(const char* sstr){ int len = MultiByteToWideChar(CP_ACP, 0, sstr, -1, NULL, 0); wchar_t* wstr = new wchar_t[len + 1]; memset(wstr, 0, len + 1); MultiByteToWideChar(CP_ACP, 0, sstr, -1, wstr, len); CString str

2021-09-02 15:09:09 919

原创 QT使用 QJsonDocument 处理 JSON

#include "mainwindow.h"#include <QJsonObject>#include <QJsonArray>#include <QJsonDocument>#include <QJsonParseError>#include <QJsonValue>#include <QDebug>#include <QFile>MainWindow::MainWindow(QWidget *par

2021-08-12 15:18:30 970

原创 QT 添加阴影的三种方式

1.设置setStyleSheetsetStyleSheet(“border:1px solid #FFFFFF”);其他的样式介绍如下:font: bold; 是否粗体显示font-family:""; 来设定字体所属家族,font-size:20px; 来设定字体大小font-style: nomal; 来设定字体样式font-weight:20px; 来设定字体深浅color:black ;字体颜色border: 1px solid gray;边框大小,样式,颜色border-im

2021-03-03 16:38:08 6974 1

原创 C++ 11 Bind函数用法

#include <iostream>#include <string>#include <functional>using namespace std;using namespace std::placeholders;void test(int i, double d, const string &s){ cout << "i = " << i << " d = " << d <<

2020-11-18 11:26:20 173

原创 C++ STL标准模板库---函数对象及谓词

2019/8/22天气:晴函数对象重载函数调用操作符的类,其对象常称为函数对象(function object),即它们是行为类似函数的对象,也叫仿函数(functor),其实就是重载“()”操作符,使得类对象可以像函数那样调用。注意:1.函数对象(仿函数)是一个类,不是一个函数。2.函数对象(仿函数)重载了”() ”操作符使得它可以像函数一样调用。分类:假定某个类有一个重载的ope...

2019-08-22 18:05:32 285

原创 C++ STL标准模板库---容器的使用时机

2019/8/22天气:晴8月底了快 还是那么热啊图示特点vectordequelistsetmultisetmapmultimap典型内存结构单端数组双端数组双向链表二叉树二叉树二叉树二叉树可随机存取是是否否否对key而言: 不是否元素搜寻速度慢慢非常慢快快对key而言:快对key而言:快元素安插...

2019-08-22 18:01:58 220 1

原创 C++ STL标准模板库---map/multimap的概念以及简单使用

2019/8/19天气:晴天气很晴 空调很冷 外面夏天 屋内冬天map/multimap容器map/multimap基本概念Map的特性是,所有元素都会根据元素的键值自动排序。Map所有的元素都是pair,同时拥有实值和键值,pair的第一元素被视为键值,第二元素被视为实值,map不允许两个元素有相同的键值。不能通过map的迭代器改变map的键值,因为map的键值关系到map元素的排...

2019-08-21 18:06:52 300

原创 C++ STL标准模板库---set/multiset的概念以及简单使用

2019/8/19天气:多云set/multiset容器基本概念set容器基本概念Set的特性:所有元素都会根据元素的键值自动被排序。Set的元素不像map那样可以同时拥有实值和键值,set的元素即是键值又是实值。Set不允许两个元素有相同的键值。不能通过迭代器改变set元素,set的iterator是一种const_iterator.set拥有和list某些相同的性质,当对容器中的元素...

2019-08-19 18:14:01 350

原创 C++ STL标准模板库---list的概念以及简单使用

2019/8/19天气:多云List容器(堆栈)list容器的基本概念链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。每个节点分为两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。相较于vector的连续线性空间,list就显得负责许多,它的好处是每次插入或者删除一个元素,就是配置或者释放一个元素的空间。因此...

2019-08-19 18:06:37 670

原创 C++ STL标准模板库---stack容器以及queue容器的概念以及简单使用

2019/8/19天气:多云入秋之后,昨晚下了会雨 今早起床感觉凉爽了不少stack容器(堆栈)stack容器基本概念stack容器是一种先进后出的数据结构,它只有一个出口,形式如图所示:stack容器允许新增元素,移除元素,取得栈顶元素,但是除了最顶端之外,没有任何其他方法可以存取stack的其他元素。stack不允许有遍历行为堆栈:push ...

2019-08-19 10:21:20 267

原创 C++ STL标准模板库---deque容器的概念以及简单使用

2019/8/16天气:晴deque容器基本概念Vector容器是单向开口的连续内存空间,deque则是一种双向开口的连续线性空间。所谓的双向开口,意思是可以在头尾两端分别做元素的插入和删除操作,当然,vector容器也可以在头尾两端插入元素,但是在其头部操作效率奇差,无法被接受。Deque容器和vector容器最大的差异,一在于deque允许使用常数项时间对头端进行元素的插入和删除操作...

2019-08-16 18:03:04 340

原创 C++ STL标准模板库---vector容器的概念以及简单使用

2019/8/16天气:晴又一个双休了 可以好好休息休息 顺便做顿好的犒劳犒劳自己了vector容器基本概念vector的数据安排以及操作方式,与array非常相似,两者的唯一差别在于空间的运用的灵活性。Array是静态空间,一旦配置了就不能改变,要换大一点或者小一点的空间,可以,一切琐碎得由自己来,首先配置一块新的空间,然后将旧空间的数据搬往新空间,再释放原来的空间。Vector是动...

2019-08-16 17:55:45 309

原创 C++ STL标准模板库---string容器的概念以及简单使用

2019/8/15天气:晴string容器的基本概念C风格字符串(以空字符结尾的字符数组)太过复杂难于掌握,不适合大程序的开发,所以C++标准库定义了一种string类,定义在头文件。String和c风格字符串对比:Char*是一个指针,String是一个类string封装了char*,管理这个字符串,是一个char*型的容器。String封装了很多实用的成员方法查找find,拷贝...

2019-08-15 18:11:00 145

原创 C++ STL标准模板库---介绍

2019/8/15天气:晴STL标准库还是去年看资料了解的 结果这大半年时间没去再深入了解 导致现在全部忘了 所以现在重新温习一下 以此加以巩固STL(Standard Template Library,标准模板库)基本概念STL 从广义上分为: 容器(container) 算法(algorithm) 迭代器(iterator),容器和算法之间通过迭代器进行无缝连接。STL六大组件简介...

2019-08-15 17:59:10 183

原创 C++修改任务栏右侧标题失效问题

2019/8/12天气:晴上周五台风影响温度降了一些 现在台风过去了 温度稍微降了一些 台风对浙江沿海照成了很大的财产和人员损失 果然人类在天灾面前显得是那么的渺小修改名称失效简单说一下这个问题,因为项目需要改变名称,所以之前的项目名称需要全部改成最新的 但是出现一个问题就是 底部任务栏右键显示名称怎么都修改不了 搜索之前旧的项目名称也一直搜不到 后来在同事的帮助下才发现了这个问题 所以记...

2019-08-12 14:01:23 239

原创 C++多字节与Unicode之间的转化

2019/8/8天气:多云今天是24节气的立秋 天气又收到了台风的影响 接下来这几天应该不会那么热了吧UnicodeUnicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。char数据类...

2019-08-08 17:39:29 3144 1

原创 C++测试代码的运行时间几种基本方法

2019/8/7天气:晴今天依然很热 大概要到9月中可能才会没这么热吧 今天七夕 愿天下有情人终成眷属1.GetTickCountGetTickCount是一种函数。GetTickCount返回(retrieve)从操作系统启动所经过(elapsed)的毫秒数,它的返回值是DWORD。示例代码void f_tese1(){ long t1 = GetTickCount(); ...

2019-08-07 17:41:26 11006 2

原创 LibCurl的使用

天气:晴由于台风的影响这几天温度对比前几天稍微低了一些LibCurl的基本使用libcurl是一个跨平台的开源网络协议库,支持http, https, rtsp等多种协议 。libcurl同样支持HTTPS证书授权,HTTP POST, HTTP PUT, FTP 上传, HTTP基本表单上传,代理,cookies,和用户认证。准备工作把这些文件放到自己项目下 还有lib也是示例代码...

2019-08-06 15:27:02 373

原创 JsonCpp的用法

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2019-08-05 15:07:47 1406 1

原创 一些需要注意的编码习惯

天气:阴今天天气比昨天舒适一点 有很大的风 吹起来感觉在这烈日的照耀下不是那么热了笔记##C++内存泄露c++语言最头疼的事估计就是内存泄露了吧 一个程序如果长时间运行 如果有内存泄露 运行时间长了 结果就是程序异常 如果要防止内存泄露 首先要养成一个良好的编程习惯(以下为大佬收集 小弟借来借鉴)1.有malloc ,一定要有free2. 有GlobalAlloc, 一定要有Globa...

2019-08-01 21:00:35 141

转载 [win32]c++使用win32开发一个窗口的完整流程【转】

本文为博主学习过程中整理发布,如有侵权请告知原文链接:http://blog.csdn.net/tcjiaan/article/details/8497535一、WinMain入口点我们在学习标准C++的时候,都知道每个应用程序运行时都会先进入入口点函数main,而当从main函数跳出时程序就结束了。在Windows编程里面,也是一样的,只是我们的入口点函数不叫main,叫WinMain,...

2019-07-05 10:22:09 2844 3

转载 程序员的源代码阅读方法

正确的学习方法不仅能够让你事半功倍,也能够让你更加接近真理。初学一个工程的源代码,往往让初学者手足无措。下面的方法希望为初学者带来启示和便利。这个学习方式是基于编译环境和语言比较熟悉的基础上。最重要的是你要确定你要阅读的源代码是一份好代码。因为阅读代码就像阅读书籍。好代码让你终生受益,坏代码会给你留下阴影。一。先把源代码安装起来编译起来,结合它的文档和手册,熟悉其功能和它的应用方式。如果遇到的是...

2019-06-17 14:49:08 317

VS-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

vs编程工具 2019可用

2021-09-09

enigmavb.exe

一款非常简单的打包工具 只需要选择资源即可变成可以直接运行的可执行程序

2021-04-01

zip和unzip.zip

将zip.exe和unzip.exe复制到你的工程即可使用命令行进行解压缩操作

2021-02-24

QT版本DFA敏感词过滤

该算法基于DFA并进行相应的简化,大概流程是将敏感词库按模块聚合构建成一个词树,然后从头到尾扫描一遍目标文本,当遇到以敏感词树中的索引的字时,查看后面的文本是否构成敏感词,构成敏感词即记录(当查找到敏感词时,记录下来敏感词位置,接着往下匹配,如果后续匹配不上,则以之前匹配到的为主,如若后续匹配上了,则将之前匹配到的节点后移,以此匹配到最长的敏感词) 该DEMO已实现添加敏感词 设置敏感词的等级 敏感词低于何种等级不屏蔽 实现了最长的敏感词匹配(即敏感词为:中国,中国人,中国人民 )当输入:我是一个中国人民时,匹配到中国人民

2020-12-08

C++ DFA实现敏感词匹配

该算法基于DFA并进行相应的简化,大概流程是将敏感词库按模块聚合构建成一个词树,然后从头到尾扫描一遍目标文本,当遇到以敏感词树中的索引的字时,查看后面的文本是否构成敏感词,构成敏感词即记录(当查找到敏感词时,记录下来敏感词位置,接着往下匹配,如果后续匹配不上,则以之前匹配到的为主,如若后续匹配上了,则将之前匹配到的节点后移,以此匹配到最长的敏感词) 该DEMO已实现添加敏感词 设置敏感词的等级 敏感词低于何种等级不屏蔽 实现了最长的敏感词匹配(即敏感词为:中国,中国人,中国人民 )当输入:我是一个中国人民时,匹配到中国人民

2020-12-08

多线程比赛WaitForMultipleObjects()函数的应用.rar

多线程比赛WaitForMultipleObjects()函数的应用.rar

2020-11-18

libcurl的基本使用

libcurl是一个跨平台的开源网络协议库,支持http, https, rtsp等多种协议 。libcurl同样支持HTTPS证书授权,HTTP POST, HTTP PUT, FTP 上传, HTTP基本表单上传,代理,cookies,和用户认证。

2019-08-13

JsonCpp的基本使用

JSONCPP是C++中的生成与解析JSON 字符串的一种实现。JSON是一种人比较容易理解,机器也比较容易解析的轻量级的数据交换格式。介绍了基本的用法,有新用法和旧版本用法。

2019-08-13

空空如也

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

TA关注的人

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