自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Hyl的博客

小白的博客

  • 博客(43)
  • 收藏
  • 关注

原创 mxnet生成.rec

主要分两步:生成.lst和生成.rec1.1、生成.lst需要准备的就是你的图像。假设你的图像数据放在/home/image文件夹下,一共有10个类别,那么在/home/image文件夹下应该有10个子文件夹,每个子文件夹放属于这个类的图像文件,你可以用英文名命名这些子文件夹来表达类别,这个都无所谓,即便用1到10这10个数字来分别命名这10个子文件夹也没什么,只不过用英文名会方便你记忆这个文件夹包含的图像是属于哪个类别的。另外假设你要将生成的.lst文件放在/home/lst文件夹下,你的mxn.

2020-11-27 09:47:45 351 1

原创 Ubuntu 20.04 Win10 双系统踩坑记录(secure boot,nvidia...)

历时四天,重装了不下10次系统,终于,今天完美的装好了。这里记录以下我踩的坑,怕以后忘了,赶紧记下来。配置:i7-7700,nvidia 1070,win10(刚装的...)现象和经历(想直接看正确安装顺序的,往后翻):第一次安装ubuntu时,win10是三年前装的,ubuntu安装很顺利,但是进入系统之后,选择aliyun源,执行upgrade命令是爆出错误,然后系统黑屏关机。启动多次卡在ubuntu加载界面,bios都进不去...多次重启之后,进入系统,这个时候其实就不太正常了,但是我心大阿!

2020-07-15 21:22:12 8299 1

原创 QT访问sqlite3数据库

项目上需要写一个简单地配置工具,主要是操作数据库的,MFC我不会,那就用qt上吧一.测试数据库驱动首先添加sql模块检查qt支持的数据库驱动QSQLITE就是指支持sqlite3,没有的话就得先编译对应的驱动二.打开数据库 db.setDatabaseName("数据库名字.db"); if(db.open()) qDebug() << "...

2019-08-27 15:20:25 1643

原创 Centos编译显示:错误:‘put_time’不是‘std’的成员

错误:‘put_time’不是‘std’的成员原因很简单,g++编译器版本低,升级高版本就行了annot open shared object file: No such file or directory编译的库找不到,把路径添加了就行了...

2019-08-01 23:31:33 3442

原创 cannot open shared object file: No such file or directory:找不到库文件

linux编译成功了,执行的时候收到类似这样的提示./a.out: error while loading shared libraries: libosip2.so.12: cannot open shared object file: No such file or directory说明这个库系统找不到了第一步:找到这个库在哪一般自己装的库有可能在/usr/local/lib目录...

2019-07-31 21:41:17 1309

原创 wireshark中查看RTP视频

如何在wireshark中查看RTP视频

2019-07-30 21:31:51 5430 5

原创 Linux安装wireshark(Ubuntu Centos)

一、ubuntu平台:1、安装安装包:说明:#代表控制终端命令行sudo apt-get updatesudo apt-get install wireshark//等待安装完成选择Yes,若是中文,选择<是>2、添加当前用户到wireshark如果运行wireshark提示权限不足,要么使用sudo wireshark运行,要么添加用户到wireshark组第一...

2019-07-28 23:29:30 1735

原创 linux下使用eXosip2的若干问题记录(Centos以及Ubuntu)

问题1:./a.out: error while loading shared libraries: libeXosip2.so.12: cannot open shared object file: No such file or directory解决办法:sudo vim /etc/ld.so.conf 末尾添加 /usr/local/lib保存退出,执行sudo ldconfig...

2019-07-28 00:27:18 813

原创 c++设计模式总结(22种)

访问者模式:https://blog.csdn.net/weixin_43272766/article/details/96908721 解释器模式:https://blog.csdn.net/weixin_43272766/article/details/96770517 享元模式:https://blog.csdn.net/weixin_43272766/article...

2019-07-26 22:38:34 425 1

原创 c++设计模式(访问者模式)

访问者模式(Visitor): 表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。 访问者模式适用于数据结构相对稳定的系统。 它把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由地演化。 访问者模式的目的是要把处理从数据结构中分离出来 ,如果系统有比较稳定的数据结构,又有易于变化的算法的...

2019-07-22 22:37:09 174

原创 c++设计模式(解释器模式)

解释器模式(Interpreter): 给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。 解释器需要解决的问题:如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子。这样就可以构建一个解释器,该解释器通过解释这些句子来解决该问题(《大话设计模式》中的图↓↓↓)。#include...

2019-07-21 22:34:11 192

原创 c++设计模式(享元模式)

享元模式(Flyweight): 运用共享技术有效地支持大量细粒度的对象。 享元对象内部不会随环境变化而变化的共享部分,可以称为享元对象的内部状态,而随环境改变而改变的、不可以共享的状态就是外部状态了。 享元模式可以避免大量非常相似类的开销。在程序设计中,有时需要生成大量细粒度的类实例来表示数据。如果能发现这些实例除了几个参数外基本都是相同的,有时就能够大幅度地减少需要实...

2019-07-20 22:51:39 124

原创 c++设计模式(中介者模式)

将一个系统分割成许多对象通常可以增加其可复用性,但是对象之间相互连接的激增又会降低其可复用性。因为大量的连接使得一个对象不可能在没有其他对象的支持下工作,系统表现为一个不可分割的整体,所以,对系统的行为进行任何较大的改动就十分困难了。中介者模式(Mediator): 用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立...

2019-07-19 23:24:43 155

原创 c++设计模式(职责链模式)

职责链模式(Chain of Responsibility): 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 好比高中时候语文老师要在某个学习小组里找一个能背下来全篇长歌行的同学,点名第一个,第一个不会下一个,如此循环总会找到一个会的同学...... 其中的关键就是当客户...

2019-07-18 23:04:42 499

原创 c++设计模式(命令模式)

命令模式: 将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。 说白了,就是不去直接指挥别人去干啥干啥,而是记录好你的命令,然后再去指挥对应的人去执行你的任务,由于命令记录好了,那么撤销、排队什么的操作就可行了。 总结下优点: 能较容易的设计一个命令队列。 在需要的情况下,可以较容易的将命令...

2019-07-18 22:34:20 139

原创 c++设计模式(桥接模式)

说点废话。自从决定从家乡走出来闯荡,也有大半年了,无时无刻不在提醒自己,放弃了原来的工作,放弃了安逸的环境,图个什么?目标是什么?可是人就是个奇怪的生物,懒劲儿一上来啊,那是止都止不住,惭愧啊!所以啊,博客这种东西对我来说,除了记录学习过程,最大的作用,就是督促自己了啊!没办法,自制力不够,又不是小孩子了,没人催着你了,只能自己想办法,共勉...... 设计模式,我都是跟着大...

2019-07-15 23:54:16 135

原创 c++设计模式(单例模式)

单例模式保证一个类只有一个实例,并提供一个访问它的全局访问点 单例模式实际开发过程中使用频率还是挺高的,以前就那么用,只知道有懒汉式,饿汉式,也没有去深究,今天趁着学习设计模式,总结下。 好,咱们直入正题,先来说说懒汉式。 懒汉式 懒汉嘛,懒这个字就说明了你不去管他,他就不会动,放在单例模式里面,那就是:你不去调用他,他就不会去实例化那唯一的对象,示例代码如...

2019-07-13 00:18:52 155

原创 c++设计模式(组合模式)

组合模式将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性 需求中是体现部分与整体层次的结构时,希望用户可以忽略组合对象与单个对象的不同,统一地使用组合结构中的所有对象时,考虑使用组合模式 整体和部分可以被一致对待#include <iostream>#include <string>#include &...

2019-07-11 17:24:57 149

原创 c++设计模式(备忘录模式)

备忘录模式在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可将该对象回复到原先保存的状态 将要保存的细节封装到备忘录(Memento)中,更改保存的细节不影响客户端 适用于功能比较复杂,但需要维护或记录属性历史的类,或者需要保存的属性只是众多属性中的一小部分#include <iostream>#include <string&...

2019-07-11 10:18:38 110

原创 c++设计模式(外观模式)

继续,今天是外观模式外观模式(《大话设计模式》):为子系统中的一组接口提供一个一致 的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 在设计初期,应该有意识的将不同的两个层分离,如:经典的三层结构,需要考虑在数据访问层和业务逻辑层,业务逻辑层和表示层的层与层之间建立外观Faced 在开发阶段,子系统往往因为不断的重构演化而变得越来越复杂,外部调用越来越困难,增加外...

2019-07-09 18:27:23 131

原创 c++设计模式(适配器模式)

适配器模式:将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作 这个东西挺好理解的,只是分为类适配器模式和对象适配器模式,书中《大话设计模式》只有对象适配器,这里两种都给出实现。上代码:#include <iostream>#include <string>using namespace std;//客...

2019-07-09 18:25:27 114

原创 c++设计模式(状态模式)

状态模式:书中原话《大话设计模式》:当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类 状态模式主要解决的是当控制一个对象状态转换的条件表达式过于复杂时的情况。 把状态的判断逻辑转移到表示不同状态的一系列类当中,可以把复杂的判断逻辑简化。 将特定的状态相关的行为都放入一个对象中,由于所有与状态相关的代码都存在于某个类中,所以通过定义新的子类可以很容易的增加新的状态和转...

2019-07-09 17:46:03 271

原创 c++设计模式(抽象工厂模式)

抽象工厂模式:提供一个创建一系列相关或互相依赖对象的接口,而无需指定它们具体的类这个东西没什么好说的,一般都很熟悉了,直接上代码#include <iostream>#include <string>using namespace std;/*抽象工厂模式:提供一个创建一系列相关或互相依赖对象的接口,而无需指定它们具体的类*/class ...

2019-06-29 18:08:41 176

原创 c++设计模式(观察者模式2)--事件委托C++实现

普通的观察者模式:https://blog.csdn.net/weixin_43272766/article/details/93915322观察者模式(大话设计模式)-->事件委托C++实现 书中描述如下: 委托就是一种引用方法的类型。一旦为委托分配了方法,委托将与该方法具有相同的行为委托方法的使用可以像其他任何方法一样,具有参数和返回值。委托可以看做是对函数的抽象...

2019-06-29 16:27:58 652 1

原创 c++设计模式(观察者模式1)

观察者模式(大话设计模式):(又叫发布-订阅模式)这是一个有意思的模式 定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象,这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己将一个系统分割成一系列相互协作的类有一个很不好的副作用,那就是需要维护相关对象间的一致性,我们不希望为了维护一致性而使各类紧密耦合,这样会给维护、扩展和重用都带来不便...

2019-06-27 21:39:30 144

原创 c++设计模式(外观模式)

外观模式(大话设计模式):为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用何时使用:在设计初期阶段, 应该要有意识的将不同的两个层分离,层与层之间建立外观Facade,这样可以为复杂的子系统提供一个简单的接口 减少他们之间的依赖 维护一个遗留的大型系统时,可能这个系统已经非常难以维护和,扩展了,为新系统开发一个外观Facade类,...

2019-06-26 21:10:34 98

原创 c++设计模式(模板方法模式)

模板方法模式(《大话设计模式》):模板方法模式 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。 模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤 通过把重复出现的、不变的行为搬移到父类,去除子类中的重复代码 场景:做选择题,每个人做的题都是一样的,只需要选择A、B、C、D #include <iostream>#include &lt...

2019-06-26 20:43:00 103

原创 c++设计模式(原型模式)

原型模式(《大话设计模式》):用原型实例制定创建对象的种类,并且通过拷贝这些原型创建新的对象 从一个对象再创建另外一个可定制的对象,而且不需要知道任何创建的细节。 c++本身是有拷贝构造的,那么原型模式有什么好处呢? 我自己感觉,和拷贝构造相比,隐藏了拷贝的细节,把拷贝构造进行了封装 下面这个例子,我用了继承和多态,再加上智能指针,用起来给我自己对大的感受就是不用动脑子,我都不需要知道...

2019-06-26 19:05:36 2477 3

原创 windows下的cpp文件在linux下打开的若干问题

输出的字体格式是乱码解决方法:使用vim下使用:set fileenconding 查看编码格式,显示cp936即为gbk编码格式,使用:set fileenconding=ufg-8设置编码格式为utf-8, :set fileencoding 查看格式是否设置为utf-8,保存退出,编译,运行打开的文件行尾有^M标志是因为windows的行尾结束标志和linux结束标志不一样,使...

2019-06-24 20:58:42 546

原创 c++设计模式(建造者模式)

继续设计模式,今天是建造者模式。建造者模式(《大话设计模式》):将一个复杂对象的构建和他的表示分离,使得同样的构建过程可以创建不同的表示 如果我们使用了建造者模式,那么用户就只需制定需要建造的类型就可以得到他们,而具体建造的过程和细节就不需要知道了 主要用于创建一些复杂的对象,这些对象内部构建间的建造顺序通常是稳定的,但对象内部的构建通常面临着复杂的变化 建造者模式的好处:使得建造代...

2019-06-24 20:58:06 78

原创 c++设计原则

单一职责原则就一个类而言,应该仅有一个引起它变化的原因 如果一个类承担的职责过多,这些职责耦合在一起,一个职责的变化可能削弱或者一直这个类完成其他职责的能力,设计脆弱,变化会导致意向不到的破坏。 软件设计要发现职责,并把那些职责相互分离,判断是否需要分离的依据:如果你能想到多余一个的动机去改变一个类,那么这个类就有多于一个的职责开放封闭原则类,模板,函数等,应该可以扩展,但是不可修改...

2019-06-24 20:56:13 1221

原创 c++设计模式(代理模式)

开始学习设计模式,今天是代理模式。引用《大话设计模式》:代理模式:为其他对象提供一种代理以控制对这个对象的访问总结:控制对被代理对象的访问,接口与实现的彻底分离,可以在实际调用被代理对象时进行预处理,也可以灵活访问被代理对象的具体业务接口。Girl,被追求者 GiveGift,代理和被代理者的统一接口 Pursuit,追求者(被代理者) Proxy,代理场景:某追求者追...

2019-05-22 18:05:04 95

原创 windows下的udp通讯简单示例

很久没有手写udp通讯了,而且以前也没有在windows下写过,今天写一下,熟悉一下发送端代码:#include <iostream>#include <string>#include <winsock.h>#pragma comment(lib, "ws2_32.lib")using namespace std;int main(){...

2019-05-16 10:31:31 1817

原创 windows下的tcp通讯简单示例

很少去手写tcp通讯,而且windows上的tcp通讯更是没写过,写一下,练练手客户端:#include <iostream>#include <string>#include <winsock.h>using namespace std;#pragma comment(lib, "ws2_32.lib")int main(){ WSAD...

2019-05-16 10:31:01 482

原创 c++设计模式(装饰模式)

开始学习设计模式,今天的是装饰模式。引用《大话设计模式》:装饰模式,动态地给一个对象添加一些额外的职责,就增加功能而言,装饰模式比生成子类更为灵活 装饰对象的实现和如何使用这个对象分离开了,每个装饰对象只关心自己的功能,不需要关心如何被添加到对象链当中 当系统需要新功能的时候,且新的功能仅仅是为了满足一些只在特定情况下使用的情形,这个时候使用装饰模式是很好的 装饰模式可以把要添加的功...

2019-05-16 10:30:27 129

原创 c++设计模式(策略模式)

开始学习设计模式,今天的是策略模式。主要参考:《大话设计模式》,博客https://blog.csdn.net/wuzhekai1985/article/details/6665197引用: 策略模式是一种定义一系列算法的方法,所有这些算法完成的都是相同的工作, 只是实现不同,可以用相同的方式调用所有的算法,减少了算法类之间的耦合。 策略模式简化了单元测试,因为每个算法都有...

2019-05-16 10:29:26 147

原创 使用pugi从零组装一个xml字符串

使用pugi从零组装一个xml字符串代码如下:#include <iostream>#include "pugiconfig.hpp"#include "pugixml.hpp"#include <string>#include <sstream>using namespace std;int main(){ pugi::xml_d...

2019-05-09 10:41:05 404 1

原创 Linux下编译eXosip2库以及测试(centos)

下载https://c-ares.haxx.se/http://ftp.twaren.net/Unix/NonGNU//osip/http://ftp.yzu.edu.tw/nongnu/exosip/依次解压编译测试 1 #include <iostream> 2 #include <eXosip2/eXosip.h> 3 #include &l...

2019-05-09 10:40:48 2390

原创 vs2019编译osip和eXosip库5.1版本静态库以及简单的示例

参考文章:https://blog.csdn.net/qq_41840387/article/details/79564471win10, vs2019,eXosip2,5.1版本下载:https://c-ares.haxx.se/ 下载:c-ares-1.15.0.tar.gzhttp://ftp.twaren.net/Unix/NonGNU//osip/ 下载:libosip2-5...

2019-05-09 10:40:09 1877 4

原创 使用pugi解析XML--增加、删除节点(简单示例2)

依旧是使用pugi解析xml,这次来看看添加或者移除节点的操作,还有一些遍历方法-附: pugi简单上手示例https://blog.csdn.net/weixin_43272766/article/details/89875062#include <iostream>#include "pugiconfig.hpp"#include "pugixml.hpp"#incl...

2019-05-07 10:57:23 2688

空空如也

空空如也

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

TA关注的人

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