自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 资源 (3)
  • 收藏
  • 关注

原创 从零开始编译Poco C++和VS2015环境配置

Poco C++是一个C++的开源框架,详细介绍可以问百度介绍更详细,这里我就记录下我从零编译poco-1.9.0和配置 VS2015的环境,以备不时之需。步骤:一、安装cmake; 二、编译poco-1.9.0; 三、将编译后的poco-1.9.0配置到VS2015的项目中; 四、示例简单示例。安装cmake我的电脑环境: win7 64位; cma...

2018-09-06 19:55:39 4926 1

原创 观察者模式C++

当对象间存在一对多的关系,当状态改变时,其他对象都得到通知,这就是观察者模式了。观察者模式实现发布-订阅功能。如我们有个项目叫NGI,需要召开StanUp会议,会议上需求变更时需要通过所有参加会议的人员,我们就可以使用观察者模式,其UML图如下: 其代码实现如下:#include <iostream>#include <list>#include <...

2018-07-27 14:18:25 210

原创 备忘录模式(C++)

下午无聊, 复习了下备忘录模式,顺便做个笔记,日后也许用得上那,对吧。备忘录模式:在不破坏封装的前提下,获取一个对象的内部状态,并在该对象之外包这个状态 。这样做的目的就是可以恢复该对象的状态。例如,我们的每个车的上不是有个radio吗?在夏天我们在开车时会开启空调,然后听听歌,将空调温度,播放歌曲音量调节到合适的数值,当下次开车时希望其恢复到上一次调节的状态,而不是重新调节温度和音量。...

2018-07-14 22:36:28 531

原创 文件拷贝(复制粘贴)

我们几乎天天用到复制粘贴,做开发人员的我们有没有想过其原理那?其实复制粘贴就是文件操作,只不过是文件读写,再说明白点就是文件拷贝操作,那我们就一起看看文件拷贝的实现。1.C++实现:#include <iostream>#include <fstream>#include <ctime>using namespace std;int ...

2018-06-18 16:48:47 1101

原创 生活和职业的一点感想

        不知不觉已经做软件这行已经三年半了,回头看看自己,在事业上还一事无成,对于前方的路,对自己的定位,自己的职业规划,似乎都是模糊的......        对于过去的,我们已经无力改变,但是我们依然需要对自己的未来充满信心,尽自己的能力做到最好,因为我们已经是“大人”,需要承担家庭的责任,需要让自己的家人生活的更好,告诉自己,加油......      因为高中初中都是班长,大学兼...

2018-06-03 20:29:09 654

原创 生活的那么一点反思

生活的那么一点反思   夜深了,独自一个人在酒店,想想自己过去走过的路,有点悲伤,但是悲伤中有那么一丝欣慰。  悲伤的是自己给自己定了很多目标,但是很多都没有完成。如自己要求自己今年每周一篇技术博客总结学习的东西,但是仅仅做到了一个多月就没有坚持下去,给自己的借口是项目忙,但是想想更多是自己的惰性和毅力不够,最起码周末可以做的,然而自己没有去坚持...

2018-04-19 23:02:00 121

原创 KPM算法初步理解

KPM算法初步理解   一个字符串“FBCABCDABABCDABCDABYW”中是否包含另外一个字符串“ABCDABY”?  上面这道题目是一个经典的字符串匹配的题目,对于字符串匹配,比较好的算法里很容易想到KPM算法,那KPM算法是干什么的?为什么说KPM比较优秀? 给定一个字符串O和F,长度分别是m、n,判断F是否在O中出现,如...

2018-03-07 21:35:00 1976

原创 装饰模式(C++)

装饰模式(C++)   上周换了家公司,由于项目还没有开始,所以比较清闲,上班没事捣鼓下了装饰模式,下面来做做笔记。  装饰模式:动态的将职责额外的加到对象上,若是要扩展,装饰模式提供比继承更加灵活。  上面定义可能比较羞涩难明白,我们举个例子。如世界有英语课程,英语课程很多国家又各有不同,如果中国英语。中国英文又分为新东方英语,新概念英语等,...

2018-03-06 22:51:00 141

原创 时间复杂度

时间复杂度    对于算法,我们应该就会想到时间复杂度和空间复杂度,毕竟它是衡量一个算法效率基本标杆。在实际项目中,一般来说其时间复杂度影响更为突出,那今天没事来总结下时间复杂度的学习笔记呗。   时间频度:算法中的语句执行次数称为时间频度,记为T(n)。  时间复杂度:语句执行次数 T(n) 是关于问题规模 n 的函数,进而分析 T(n)...

2018-03-03 22:15:00 115

原创 代理模式(C++)

代理模式(C++)    年过完了,开始上班了,时间过得太快了,感觉过了个假年........  代理模式:为其他对象提供一种代理,以控制这个对象的访问。  角色分工:Subject:抽象角色,声明对真实对象和代理对象的共同接口;Proxy:代理角色,代理真实对象的访问;RealSubject:真实角色,最终需要引用的对象。  代理模式主要分...

2018-02-24 11:56:00 139

原创 组合模式(C++)

组合模式(C++)   组合模式:将对象组合成树形结构以来表示"整体--部分"的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。  关于组合模式的定义有个关键词"树形",这个很关键,也很常见,如二叉树什么的。举个例子,如孝感城市,有教育部分和检察部门,孝感市下面的又有大悟县、红安县等县城,每个县城下面也有教育部分和检察部门,这个不...

2018-02-12 14:00:00 146

原创 字符串反转和句子反转(字符串逆序和句子逆序)

字符串反转和句子反转(字符串逆序和句子逆序)   昨天一个哥们面试,面试官给他出一道题:将字符串反转,如qwert,反转为trewq;将一个句子反转,如Do one thing,反转为thing one Do。  首先,这个题目可以可以分为两个题目来做。1、反转字符串。2、反转句子。1、反转字符串:  我这里用了两种方法:  (1)...

2018-02-09 12:22:00 407

原创 建造者模式(C++)

建造者模式(C++)   建造者模式:将复杂的对象的表示和它的实现相分离,使其在同样的构建下可以构建不通的表示。  上面的话可能不是很明白,举个例子就明白了。假设一个公司的软件项目流程是固定的,都需要经过需求理解、需求设计、需求审核、编码、测试这个五个步骤,但是这个公司是一个一级供应商,在拿到项目后,有些模块需要承包给二级供应商,如HMI、Med...

2018-01-30 22:55:00 162

原创 原型模式和模板方法模式(C++)

原型模式和模板方法模式(C++)   原型模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。  其中心思想就是克隆。举个例子,我们经常性需要复印身份证复印件,有时需要几张,其实就是克隆,关于代码和UML类图,我就不再多描述了,因为这个太简单了,就是定义一个拷贝构造函数,定义一个clone函数,在clone里面new this指...

2018-01-28 15:24:00 164

原创 C++智能指针

C++智能指针   今天在网上看到一篇关于智能指针的文章,感觉很不错,故转载来学习下。  原文出自:https://www.cnblogs.com/lanxuezaipiao/p/4132096.html导读最近在补看《C++ Primer Plus》第六版,这的确是本好书,其中关于智能指针的章节解析的非常清晰,一解我以前的多处困惑。C++面...

2018-01-18 21:48:00 102

原创 适配器模式(C++实现)

适配器模式(C++实现)   设计模式,是对软件设计智慧的结晶,也是每一个开发人员应该学习的。  适配器模式:将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。  适配器模式可以分为类适配和对象适配。就开发中实际情况而言,对象适配模式用的相对而言多些,下面笔记中适配器模式就是指对象适配器模式。...

2018-01-17 22:31:00 164

原创 策略模式(C++)

策略模式(C++)   策略模式:把一系列算法封装起来,使之可以相互替换。这样就可以使算法独立于客户端变化。  如我们有很多排序算法,但是在不通的环境中,需要使用不同算法,那就可以定义一个抽象类,提供统一的接口,然后在各个排序算法继承抽象类,并实现该子类的排序算法,再定义一个项目类,通过构造函数传入不同算法类的对象或是模板实例化来表示在不同的项...

2018-01-09 18:54:00 186

原创 工厂模式(C++实现)

工厂模式(C++实现)   没事捣鼓了下相对而言比较简单的工厂模式,然后写了个小Demo,记录下,等十年后看到也是种回忆哈.......  工厂模式一般分为三种:简单工厂模式、工厂方法模式、抽象工厂模式。一、简单工厂模式:  简单工厂模式,工厂类是创建产品的,它决定创建哪一种产品,就像领导决定采用那种技术方案样。举个例子,现在有宝马车和奔驰车...

2018-01-08 23:49:00 441

原创 桥接模式(C++实现)

桥接模式(C++实现)   下午无聊,复习了下桥接模式,做下笔记,以后忘记了可以翻翻笔记来看看,毕竟好记性不如烂笔头。  桥接模式:将抽象和它的实现分离,使它们都可以独立变化。  假如我买了一辆skoda的小轿车,小轿车开了一段时间,现在车上得radio过时了,希望换下radio;再过段时间,上次换得radio又过时了,希望又换更接近潮流的ra...

2018-01-06 21:10:00 270

原创 关于getMemory函数的几点思考

关于getMemory函数的几点思考   昨天,一个同事给我出来一道题,让我改错,虽然错误我找出来了,但是改错却没有改对,惭愧啊。所以今天做下笔记,算是给自己一个复习吧。  原题代码如下:void GetMemory(char *p) { p = (char *)malloc(100); } void mian(...

2018-01-06 12:12:00 184

原创 Qt跨平台(window、linux)实现多语言

Qt跨平台(window、linux)实现多语言    在项目中,实现多语言基本山是基本需求,虽然Qt支持跨平台,但在linux和windows上实现多语言的方式还是细微区别的,废话不多说,直接进入主题吧。  Qt实现多语言,是用过QTranslator加载文件,然后用QCoreApplication::installTranslator(m_t...

2017-12-28 12:39:00 472

原创 C++和QML联合编程

C++和QML联合编程   项目用C++和qml联合编程有段时间了,今天抽时间再次复习了,特写下笔记。  在QML中使用C++类型或是属性,有两种方法:    a.C++实现一个类,继承自QObject或是是QObject的派生类,并使用Q_OBJECT宏,注册为qml的一个类型。    b.C++中构造一个对象,这个对象继承自QObject...

2017-12-26 23:42:00 273

原创 仿函数和函数指针

仿函数和函数指针   今天没有事,复习了下仿函数和函数指针。   仿函数:仿函数(functor),就是使一个类的使用看上去像一个函数。其实现就是类中实现一个operator(),这个类就有了类似函数的行为,就是一个仿函数类了。     函数指针:函数指针是指向函数的指针变量。 因此“函数指针”本身首先应是指针变量,只不过该指针变量指向函数。...

2017-12-21 20:00:00 429

原创 用回调函数实现一个数据通讯模型

用回调函数实现一个数据通讯模型    今天周五,没有什么事就用回调实现一个简单的数据通讯模型,先解释下基本概念。回调函数:一个通过函数指针调用的函数,把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。  函数指针模型:void(FP*)(),下面我们就用函数指针来实现简单的回调函数。 ...

2017-12-15 23:15:00 343

原创 线程安全单例(用Qt原子指针和模板实现)和单线程单例

线程安全单例(用Qt原子指针和模板实现)和单线程单例   最近比较比较清闲,复习了下设计模式中的单例模式,对于单例模式,网上有很多实例,但是看来看去,很多感觉老是差点什么,当然也有比较多的写的很好,所以决定自己动手练习下,顺便记录下,就当记笔记了。  在实际的开发中,几乎每个项目都使用到单例模式,因为很多时候,一个类只能创建一个对象,即存在唯一...

2017-12-14 19:13:00 411

原创 常用的四种排序算法

常用的四种排序算法 #include <stdio.h>void BubbleSort(int a[], int size, int order);void SelectSort(int a[], int size, int order);void InsertSort(int a[], int size, int order...

2017-07-17 18:52:00 108

原创 html meta手机端常用参数

<!-- Safari强制全屏 --><meta name="apple-mobile-web-app-capable" content="yes" /><!-- <meta name="apple-touch-fullscreen" content="yes" /> --><!-- Safari设置状态栏颜色 -->...

2017-07-01 16:15:00 65

原创 php 删除目录以及目录下的所有文件

function del_dir($dir){ if(is_dir($dir)){ foreach(scandir($dir) as $row){ if($row == '.' || $row == '..'){ continue; } $path = $di...

2017-07-01 14:03:00 48

原创 Windows上发布Qt的可执行程序

Windows上发布Qt的可执行程序   这两天抽时间写了个截图工具,在运行release后,想发布下,最后发现点击里面.exe文件报错Qt的库文件缺失,所以学习了下在windows上发布Qt程序的方法,具体操作步骤如下:1、在Qt Creator下用release跑一遍程序,生成相应的exe文件,也就是可执行文件。2、在开始菜单搜索Qt,然后...

2017-06-29 19:48:00 170

原创 指针、常量和类型别名

指针、常量和类型别名 今天看了C++Primer的2.5.1的一点小理解。  如果某个类型的别名指代的是复合类型或是常量,那么它用到声明语句里面就会产生意想不到的后果,例如下面的声明语句用到了类型pstring,它实际上是类型char*的别名:typedef char* pstring;const pstring cstr = 0...

2017-06-15 19:54:00 482

原创 C++构造函数原则

C++构造函数原则   今天没事看了下C++的构造函数原则,顺便做个笔记,毕竟好记性不如烂笔头,废话不多说,直奔主题了了。  C++构造函数原则归结起来有下面的几条:1、如果子类没有定义构造函数,则子类默认调用父类无参数的构造函数。2、如果子类定义了构造函数,不管子类的构造函数是有参数还是没有参数的,在创建子类时,没有显示调用父类的构造函数,...

2017-06-15 12:58:00 201

原创 module "QtQuick" is not installed

module "QtQuick" is not installed   今天在项目上将之前rootfs上关于qt的目录由原来的usr/lib/qt5/变为/usr/local/qt5.2.1和/usr/local/qt5.6.2,由于webApp和HMI的进程用的不同的Qt版本(HMI使用的是Qt5.6.2),所以项目上将两套Qt的路径分开了。在启...

2017-06-15 12:38:00 4915

原创 也许我们都不是天才的程序员,但至少我们都可以成为一个理想的程序员。

也许我们都不是天才的程序员,但至少我们都可以成为一个理想的程序员。 原文出自:http://kb.cnblogs.com/page/566523/ 我算是靠坑蒙拐骗进了程序员的门,然后一路狂奔。26岁之前几乎没有任何写代码的经验,研究生毕业却意外选择了一家不可能提供培训的初创公司,在每日担忧公司倒闭、害怕被炒鱿鱼以及同事冷落白眼的三重压力...

2017-06-04 11:00:00 119

原创 webuploader 一个页面多个上传按钮 实现【亲测可用】

第一次使用百度的Webuploader时,为如何实现同一个页面使用多个上传按钮纠结了好一会儿。其实挺简单的,废话不多说,直接上代码:html按钮代码<div class="uploaderBtnBox"> <!--用来存放item--> <div id="fileList1" class="uploader-list"></di...

2017-04-26 15:17:00 117

转载 Qt资料

本文属于收藏转载,原文出处:http://blog.csdn.net/liang19890820/article/details/51752029 简述发福利了、发福利了、发福利了,重要的事情说三遍。。。为了方便更多Qter了解、学习Qt,现将相关资源进行整理,主要内容包括:Qt官网、编码风格、GitHub & Third-Party、社区论坛、博客、书籍等。满满的都是干货,独乐乐不如众乐乐。。。

2017-03-21 21:52:03 373

原创 MySQL 如何按照指定字符串进行排序

比如mysql某个字段中有 无规则的字符串(比如json格式的数据等),如何对其进行排序呢?使用以下方式即可:ORDER BY caseWHEN spec_array like '%str_01%' then 1WHEN spec_array like '%str_02%' then 2WHEN spec_array like '%str_03%' then 3WHEN s...

2017-02-17 17:34:00 122

原创 java多线程编程——静态同步函数

//饿汉式,在多线程下是安全的public class Single { private static final Single s=new Single(); private Single(){}; public static Single getInstance(){ return s; }}//懒汉式,非线程安全,必须使用...

2017-01-22 20:32:00 58

原创 java多线程编程——线程同步之同步函数

如何找出线程安全问题:1.明确那些代码块是多线程运行代码2.明确共享数据3.明确多线程运行代码中哪些语句是操作共享数据的同步函数示例:class Save{ private int sum; public synchronized void add(int n){ sum+=n; System.out.println("sum=...

2017-01-21 22:43:00 70

原创 java多线程编程——线程同步之同步代码块

编写多线程程序时,一定需要注意安全问题。多线程安全问题的原因:当多条语句在操作同一个线程共享数据时,一个线程对多条语句只执行一部分(未执行完),此时另一个线程参与进来,导致了共享数据的错误。解决办法:当多条语句操作共享数据的时,只能先让一个线程执行完,其它线程不能参与。同步前提:1.必须要有两个或者两个以上的线程2.必须是多个线程使用同一个锁//以下num 为th1,th...

2017-01-21 22:08:00 55

原创 工厂模式

介绍意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。主要解决:主要解决接口选择的问题。何时使用:我们明确地计划不同条件下创建不同实例时。如何解决:让其子类实现工厂接口,返回的也是一个抽象的产品。关键代码:创建过程在其子类执行。PHP代码:<?phpclass Button{/* ...*/}clas...

2017-01-20 14:23:00 67

Everything

Everything是一款文件、文件夹名称快速搜索软件。在搜索之前就会把所用的文件和文件夹都列出来,这一点与Windows自带的搜索系统不一样,所以称之Everything,而且速度很快。

2018-09-10

PMBOK指南第6版-中文.pdf

PMP考试学习书籍《PMBOK指南第6版》中文版,作为项目管理协会(PMI)的标准和指南,本指南是通过相关人员的自愿参与和共同协商而开发的。 的。

2018-09-07

空空如也

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

TA关注的人

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