abcd552191868_社区达人页

个人头像照片
abcd552191868
已加入开发者社区304

勋章 更多

个人头像照片
星级博主
星级博主
个人头像照片
技术博主
技术博主
个人头像照片
初入江湖
初入江湖

成就

已发布51篇文章
1条评论
已回答0个问题
0条评论
已发布0个视频
github地址

我关注的人 更多

技术能力

兴趣领域
擅长领域
技术认证

暂时未有相关云产品技术能力~

暂无个人介绍

暂无精选文章
暂无更多信息

2024年05月

  • 01.22 23:55:21
    发表了文章 2024-01-22 23:55:21

    常用设计模式(工厂方法,抽象工厂,责任链,装饰器模式)

    有关设计模式的其他常用模式请参考 单例模式的实现 常见的设计模式(模板与方法,观察者模式,策略模式)
  • 01.22 23:52:07
    发表了文章 2024-01-22 23:52:07

    常见的设计模式(模板与方法,观察者模式,策略模式)

    随着时间的推移,软件代码越来越庞大,随着而来的就是如何维护日趋庞大的软件系统。在面向对象开发出现之前,使用的是面向过程开发来设计大型的软件程序,面向过程开发将软件分成一个个单独的模块,模块之间使用函数进行组合,最后完成系统的开发,每次需要修改软件,如果不涉及好各个模块的关系,就会导致软件系统难以维护,从而导致软件变得不可使用。面向对象方法用对象模拟问题域中的实体,以对象间的联系刻画实体间联系
  • 01.22 23:47:09
    发表了文章 2024-01-22 23:47:09

    海量数据处理数据结构之Hash与布隆过滤器

    随着网络和大数据时代的到来,我们如何从海量的数据中找到我们需要的数据就成为计算机技术中不可获取的一门技术,特别是近年来抖音,快手等热门短视频的兴起,我们如何设计算法来从大量的视频中获取当前最热门的视频信息呢,这就是我们今天即将谈到的Hash和布隆过滤器。以下是Hash和布隆过滤器的一些常见应用:
  • 01.22 23:40:50
    发表了文章 2024-01-22 23:40:50

    C语言 B树的分析与实现

    本文主要说明了B树的概念、应用以及如何用C语言实现B树。
  • 01.22 23:35:51
    发表了文章 2024-01-22 23:35:51

    ffmpeg命令行工具源码之结构体分析1-命令行参数(未完结,持续更新)

    ffmpeg作为多媒体文件转换工具,至少需要有一个要转换的输入文件信息(不仅仅是普通文件,还可以是摄像头设备,网络流等),和通常至少需要一个输出格式的文件(输出文件不仅仅指普通的文件,网络协议比如RTP协议,RTSP协议都可以理解为输出文件),ffmpeg的文件的转换过程主要由以下几个流程 (1)解封装 (2)解码 (3)过滤器 (4)编码 (5)封装 因此ffmpeg工具涉及的结构体主要就从这几个方面来说明这些结构体的含义。
  • 01.22 23:34:19
    发表了文章 2024-01-22 23:34:19

    libevent介绍和使用

    libevent 是一个开源的事件通知库,它提供了一个跨平台的抽象接口,libevnet处理的事件包括网络IO事件,定时事件以及信号事件。它可以在不同的操作系统上使用,包括Linux、Windows和Mac OS X等。libevent 的主要目的是提供高效的事件通知机制,用户无需关注平台检测处理事件的机制的差异,只需关注事件的具体处理。它可以用于编写服务器、客户端和其他网络应用程序。
  • 01.22 23:29:38
    发表了文章 2024-01-22 23:29:38

    FFMPEG常用指令整理(未完结)

    ffmpeg是通用的媒体转换器,可以将广泛的输入(包括实时的抓取和记录设备)-过滤和转换为我们想要的输出格式文件。
  • 01.22 23:26:11
    发表了文章 2024-01-22 23:26:11

    C++实现单例模式-多种方式比较

    单例模式,面试中经常被问到,但是很多人只会最简单的单例模型,可能连多线程都没考虑到,本文章从最简单的单例,到认为是最佳的单例模式实现方式,单例模式没有什么知识点,直接上源码
  • 01.22 23:23:35
    发表了文章 2024-01-22 23:23:35

    jrtplib开源库系列之三:jrtplib发送接收数据流程

    前面2篇文章主要说明了如何安装jrtplib库,以及对example1进行了说明,这篇文章主要说下jrtplib库数据的收发流程。
  • 01.22 23:20:30
    发表了文章 2024-01-22 23:20:30

    jrtplib开源库系列之二:jrtplib库example1分析说明

    这个官方example还是比较简单的,主要是测试发一个数据包,然后自己接收发出的包,注意,这里需要注意将目的地址的端口和基端口(portbase)设置为相同,同时需要将这个参数设置为真sessparams.SetAcceptOwnPackets(true);
  • 01.22 23:19:20
    发表了文章 2024-01-22 23:19:20

    jrtplib开源库系列之一:jrtplib介绍、安装和测试(window 10环境介绍)

    关于jrtplib库网上已经有很多介绍,而且目前jrtplib作者已经停止更新(Apr 18, 2020),最新版本为v3.11.2。本系列内容也以该版本进行介绍。 相信你已经对RTP/RTCP协议有一定的了解,并想更深入的了解RTP协议的具体实现,jrtplib就是使用使用C++实现的RTP/RTCP协议。具体标准为RFC3550,如果想仔细阅读原文,但是对英文又有点吃力,可以参考我的博客RTP/RTCP中英文对照,在博客的后面有百度链接,是对RFC3550的中文翻译,可能很多地方不太准确,有些内容是自己添加进去的,希望不会影响你的阅读。
  • 01.22 23:18:15
    发表了文章 2024-01-22 23:18:15

    windows openssl安装和基本使用(代码演示)

    本文主要讲到了openssl的基本使用方法,开发环境为windows,开发工具为VS2019.本文主要是说明openssl如何使用,不介绍任何理论知识,如果有不懂的,请自行百度。个人建议下一个everything查询工具,真的很好用,比window自带的查询快了很多,可以查询自己想要的文件
  • 01.22 23:13:28
    发表了文章 2024-01-22 23:13:28

    window10 虚拟机 linux ubuntu 环境下samba服务器配置

    本文的目的是在windows 10 系统,使用samba服务实现 windows 10共享虚拟机ubuntu系统的文件。
  • 01.22 23:11:36
    发表了文章 2024-01-22 23:11:36

    C语言简单实现Hashtable

    hashtable是根据key查询value的一种数据结构,使用数组结构来存储所有的元素,使用一种方式将key映射到数组的不同下标,查询时key就可以直接映射到value,时间复杂度为O(1),因此,hashtable结构经常用于查询的目的。
  • 01.22 23:06:45
    发表了文章 2024-01-22 23:06:45

    Windows10 使用MSYS2和VS2019编译FFmpeg源代码-测试通过

    FFmpeg作为一个流媒体的整体解决方案,在很多项目中都使用了它,如果我们也需要使用FFmpeg进行开发,很多时候我们需要将源码编译成动态库或者静态库,然后将库放入到我们的项目中,这样我们就能在我们的项目中使用FFmpeg提供的接口进行开发。关于FFmpeg的介绍这里就不过多说明。
  • 01.22 22:54:20
    发表了文章 2024-01-22 22:54:20

    libevent-windows VS2019-cmake 编译笔记

    本文主要本文主要记录个人在使用window10使用cmake编译libevent遇到了一点小问题,这里就简单的记录一下,给cmake编译项目不熟悉的朋友一点帮助记录个人在使用window10使用cmake编译libevent遇到了一点小问题,这里就简单的记录一下,给cmake编译项目不熟悉的朋友一点帮助
  • 01.22 22:52:13
    发表了文章 2024-01-22 22:52:13

    C语言-多播测试代码(IPv4和IPv6)

    C语言-多播测试代码(IPv4和IPv6)
  • 01.22 22:49:43
    发表了文章 2024-01-22 22:49:43

    QT资源文件-QFile Write/WriteOnly/ReadWrite打开失败说明

    在使用QT进行开发过程中,常常会使用qrc(资源文件),比如一些配置文件,图片,图标(icon)等,但是一些没有经验的小伙伴会想着将配置文件的数据进行修改,发现无法以代码的方式对资源文件进行修改。
  • 01.22 22:47:44
    发表了文章 2024-01-22 22:47:44

    C语言-线程池代码

    github 地址:常用的C工具代码,这里的工具包含了C语言实现的线程池,hashtable,list,md5,字符串操作,消息队列等很多常用的工具,我这里就不一一说明了,感兴趣的朋友可以自行下载研究,工作中肯定用的上。
  • 01.22 22:42:32
    发表了文章 2024-01-22 22:42:32

    Linux 系统-网络I/O模型

    网络 I/O操作过程中会涉及到两个系统对象,一个是用户空间I/O操作的进程或者线程,另一个是内核 空间的内核系统,比如发生 I/O read操作时,它会经历两个阶段
  • 01.22 22:38:32
    发表了文章 2024-01-22 22:38:32

    【Linux C TCP服务器端-epoll案例】

    本文主要介绍了linux下Select的TCP通信流程,实现了客户端和服务器的通信,主要实现了消息的回发,即服务器将消息原封不动的回发给客户端。
  • 01.22 22:37:02
    发表了文章 2024-01-22 22:37:02

    【Linux C TCP服务器端-poll案例】

    本文主要介绍了linux下Select的TCP通信流程,实现了客户端和服务器的通信,主要实现了消息的回发,即服务器将消息原封不动的回发给客户端。
  • 01.22 22:31:49
    发表了文章 2024-01-22 22:31:49

    Linux C TCP服务器端-select案例

    本文主要介绍了linux下Select的TCP通信流程,实现了客户端和服务器的通信,主要实现了消息的回发,即服务器将消息原封不动的回发给客户端。
  • 01.22 22:29:57
    发表了文章 2024-01-22 22:29:57

    Linux C TCP编程(socket,select/poll/epoll)

    本文主要介绍了linux下标准的TCP通信流程,实现了客户端和服务器的通信,主要实现了消息的回发,即服务器将消息原封不动的回发给客户端。如果对接口不熟悉可以参考socket api介绍或者参考其他博客。
  • 01.22 22:26:25
    发表了文章 2024-01-22 22:26:25

    Linux C socket API 介绍

    Socket英文愿意是“插孔”或“插座”,作为BSD UNIX的进程通信机制后,取后一种意思,通常也被称为套接字。使用TCP/IP协议的应用程序通常采用的应用编程是使用UNIX BSD的套接字Socket,来实现网络进程之间的通信。
  • 01.22 22:21:52
    发表了文章 2024-01-22 22:21:52

    c++11智能指针的基本使用

    程序员自己管理堆内存可以提高程序的效率,但是管理比较麻烦,使用普通指针,容易造成堆内存泄漏(忘记释放),二次释放问题。
  • 01.22 22:13:13
    发表了文章 2024-01-22 22:13:13

    内存泄漏检测组件的分析与实现(linux c)-mtrace工具使用

    内存泄漏产生原因 在堆上使用malloc/remalloc/calloc分配了内存空间,但是没有使用free释放对应的空间。
  • 01.22 22:08:34
    发表了文章 2024-01-22 22:08:34

    多线程死锁检测的分析与实现(linux c)-有向图的应用

    在日常的软件开发中,多线程是不可避免的,使用多线程中的一大问题就是线程对锁的不合理使用造成的死锁,死锁一旦发生,将导致多线程程序响应时间长,吞吐量下降甚至宕机崩溃,那么如何检测出一个多线程程序中是否存在死锁呢?在提出解决方案之前,先对死锁产生的原因以及产生的现象做一个分析。最后在用有向环来检测多线程中是否存在死锁的问题。
  • 01.22 22:01:50
    发表了文章 2024-01-22 22:01:50

    UDP编程-DNS解析器的分析与实现(C语言)

    域名系统(英文:Domain Name System,缩写:DNS)的作用是将人类可读的域名 (如,www.example.com) 转换为机器可读的 IP 地址 (如,192.0.2.44)。DNS是一个将域名和IP地址相互映射的一个分布式数据库,DNS使用的端口是53。对于每一级域名长度的限制是 63 个字符,域名总长度 则不能超过 253 个字符。
  • 01.22 21:57:46
    发表了文章 2024-01-22 21:57:46

    linux C Mysql数据库增删改查(CURD)操作

    本文的目的主要是接收如何使用mysql提供的C API来实现在linux下的增删改查操作(CURD),没什么技术难点,适用于初学者。
  • 01.22 21:51:23
    发表了文章 2024-01-22 21:51:23

    linux c 多线程 互斥锁、自旋锁、原子操作的分析与使用

    生活中,我们常常会在12306或者其他购票软件上买票,特别是春节期间或者国庆长假的时候,总会出现抢票的现象,最后总会有人买不到票而埋怨这埋怨那,其实这还好,至少不会跑去现场或者网上去找客服理论,如果出现了付款,但是却没买到票的现象,那才是真的会出现很多问题,将这里的票引入到多线程中,票就被称为临界资源。
  • 01.22 21:48:10
    发表了文章 2024-01-22 21:48:10

    【C语言-通讯录的分析与实现】

    我们以手机里面的通讯录为例,说明通讯录主要有以下什么功能,我们先用一张简单的图来说明一下
  • 01.22 21:34:17
    发表了文章 2024-01-22 21:34:17

    【C 语言文件操作函数大全-腾讯课程零声学院整理】(二)

    【C 语言文件操作函数大全-腾讯课程零声学院整理】(二)
  • 01.22 21:33:46
    发表了文章 2024-01-22 21:33:46
  • 01.22 21:17:49
    发表了文章 2024-01-22 21:17:49

    C语言 红黑树分析与实现

    红黑树的资料网上资料很多,对红黑树的定义、性质、以及操作都做了详细的分析,这篇博文也参考了网上的部分文章,不过主要是学习了腾讯课堂-零声king老师的课之后,对红黑树的一些理解。肯定有一些错误的地方,如果觉得不对,可以给我指出
  • 01.22 21:14:02
    发表了文章 2024-01-22 21:14:02

    Linux C实现线程池

    主要是在linux下C语言代码实现线程池,关于链表的操作,多线程,以及多线程锁、条件变量等知识点请自行参考其他博客。
  • 01.22 21:11:27
    发表了文章 2024-01-22 21:11:27

    C 统计英文文本word(单词)个数

    关于状态机的文章请自行百度,这里主要是在统计时用到了2个状态,IN是代表字符是属于word内,OUT代表当前字符不属于word内,那么什么时候word的个数需要增加1呢,即是status从OUT到IN时(说明当前指针马上就要走到word里了)
  • 01.22 21:06:09
    发表了文章 2024-01-22 21:06:09

    live555 RTSP服务器与客户端通信源码分析

    live555已经发展了很多年,不过最新的live555版本,笔者没有编译通过,最终选择了2019.8.28的live555代码,如果有需要的同学,可以自行去Index of /pub/contrib/live555/ (videolan.org)去下载,不过需要自己去编译,我的编译环境是windows版本,网上有很多关于如何将其编译为VS版本的live555的,如果有需要的同学,可以在博客下留言,我会给你发一个(自己对一些代码进行了注释,不过都是自己的理解,不一定正确)。对于代码的分析:RTSP服务器使用的testOnDemandRTSPServer.cpp,RTSP客户端使用的testRT
  • 01.22 20:54:51
    发表了文章 2024-01-22 20:54:51

    RTSP协议中英文对照(RFC2326,RFC7826)

    RTSP协议中英文对照(RFC2326,RFC7826)
  • 01.22 20:54:09
    发表了文章 2024-01-22 20:54:09

    物理机与虚拟机(linux)不能ping 通的原因之一

    有时候,我们需要使用SSH来操作虚拟机的linux,这时候可能存在需要固定linux的固定ip,然后发现固定linuxIP后,window和linux无法ping通,而且linux无法上网的情况,这时候我们需要将linux的虚拟网卡设置为桥接方式 NAT模式和桥接模式的区别:NAT模式和桥接模式的区别
  • 01.22 20:53:20
    发表了文章 2024-01-22 20:53:20

    QT QTreeWidget 实现模糊查询和多选的勾选状态

    #QT QTreeWidget 实现模糊查询和勾选状态 本文的主要代码基本都是总结2篇博客实现了模糊查询模糊查询和勾选状态QTreeWidget实现勾选基本上所有的操作都是递归操作,个人测试了性能,如果1w项左右的数据时,没啥问题,如果有几w,那么勾选所有的,效率很慢,需要几秒钟,大家可以测试,不废话了,直接上代码:如果有啥不懂的,可以在留言,会很详细的给出解释的
  • 01.22 20:49:43
    发表了文章 2024-01-22 20:49:43

    QT 官方QObject对象翻译要点(纯属个人翻译,不靠谱)

    QT 官方QObject对象翻译要点(纯属个人翻译,不靠谱)
  • 01.22 20:48:38
    发表了文章 2024-01-22 20:48:38

    QT 重写控件(QPushButton为例)实现背景图片的切换和鼠标样式切换

    一般在QT开发中,使用setCursor()给控件设置鼠标的样式效果(一般是手型和箭头的切换),一般情况下,这个函数也是起作用的,但是一旦调用了全局QApplication::setOverrideCursor()设置鼠标效果后,在使用setCursor给控件设置鼠标样式就不起效果了,这是QT的机制
  • 01.22 20:46:09
    发表了文章 2024-01-22 20:46:09

    QT中 QPlainTextEdit自适应高度的问题(防止出现滚动条)

    在QT开发过程中,经常使用到QPlainTextEdit来填入大量的文字,一般我们都会设置QPlainText的固定高度或者默认高度,但是随着文字的增多,就会自动出现滚动条,有时候我们可能需要QPlainText的高度随着自动适应文字的高度(即是说不需要出现滚动条)
  • 01.22 20:45:05
    发表了文章 2024-01-22 20:45:05

    QT中使用 WinExec API 参数不支持中文路径的解决办法

    在QT中使用WinExec时,发现如果调用外部程序,如果路径或者参数含有中文路径,可能导致无法打开应用程序或者无法使用参数,解决办法,下面是简单的解决办法
  • 01.22 20:43:54
    发表了文章 2024-01-22 20:43:54

    C++ 11 使用detach()和join()函数使用的注意点

    最近做项目的时候,使用了c++11的多线程,以前做项目都是使用微软提供的一些api,比如临界区、Mutex等来实现多线程,但是比如临界区这玩意只在windows下才有,linux是没有这个概念的,所以为了跨平台,c++11之后,就提供了多线程的支持。
  • 01.22 20:39:24
    发表了文章 2024-01-22 20:39:24

    memset结构体报错的问题

    偶尔我们使用了会使用memset初始化结构体,但是会导致有时候编译器崩溃,这时候要检查结构体里面的各个字段是否全是基本类型,如果是自定义类或者库里面的类,有时候就会出现莫名其妙的错误,结构体初始化可以直接使用 {0}进行初始化
  • 01.22 20:38:05
    发表了文章 2024-01-22 20:38:05

    QT中QListWidget实现QListWidgetItem图片和文字居中

    在使用QT开发软件的过程中,很多时候使用QListWidget来实现列表项的功能,比如MS系统的功能模块菜单,如下面2张图所示,其中第一张图是带文字和图标的列表项,第二张图是纯图标的模式,在最近开发的平台客户端的某个功能模块都用上了。
  • 01.22 20:36:12
    发表了文章 2024-01-22 20:36:12

    QT creator开发环境下 界面更改后运行程序不能实时更新或者在源文件添加该控件后无法编译的问题

    在使用QT Creator开发界面的过程中,偶尔会出现添加控件后,运行程序后,界面控件无法更新的情况,或者在源文件使用该控件却出现无法编译的情况,使用QT Creator 4.8.2也会出现这个情况,也不知道这种情况会不会在以后有所改善。
  • 01.22 20:35:09
    发表了文章 2024-01-22 20:35:09

    字符编码导致Rapidjson(腾讯开源的json解析库)到Fastjson(阿里开发的Java json解析库)转换失败的原因分析

    最近在客户端的开发的过程中,使用到了RapidJson,公司的开发是客户端和数据库端都由不同的人进行开发,我负责的客户端的逻辑开发(使用c++),开发工具同时使用了VS2017和QT的编译环境,使用QT主要是为了客户端界面开发方便,而使用了VS环境主要是维护公司开发的数据库接口库,这个库的唯一作用就是作为一个中间桥梁,使用Rapidjson将数据库接口的json数据格式解析为结构体数据,从而在客户端界面进行展示,或者接收客户端的数据,使用Rapidjson将其转换为json数据,发送给数据库接口以保存数据使用 。不太明白的可以参考我上一篇文章说明Rapidjson的使用过程-Parse解析数组
  • 发表了文章 2024-05-15

    常用设计模式(工厂方法,抽象工厂,责任链,装饰器模式)

  • 发表了文章 2024-05-15

    海量数据处理数据结构之Hash与布隆过滤器

  • 发表了文章 2024-05-15

    C语言-线程池代码

  • 发表了文章 2024-05-15

    Windows10 使用MSYS2和VS2019编译FFmpeg源代码-测试通过

  • 发表了文章 2024-05-15

    Linux 系统-网络I/O模型

  • 发表了文章 2024-05-15

    Linux C TCP服务器端-select案例

  • 发表了文章 2024-05-15

    Linux C TCP编程(socket,select/poll/epoll)

  • 发表了文章 2024-05-15

    多线程死锁检测的分析与实现(linux c)-有向图的应用

  • 发表了文章 2024-05-15

    linux C Mysql数据库增删改查(CURD)操作

  • 发表了文章 2024-05-15

    【C 语言文件操作函数大全-腾讯课程零声学院整理】(二)

  • 发表了文章 2024-05-15

    Linux C实现线程池

  • 发表了文章 2024-05-15

    RTSP协议中英文对照(RFC2326,RFC7826)

  • 发表了文章 2024-05-15

    QT 官方QObject对象翻译要点(纯属个人翻译,不靠谱)

  • 发表了文章 2024-05-15

    QT中 QPlainTextEdit自适应高度的问题(防止出现滚动条)

  • 发表了文章 2024-05-15

    C语言 B树的分析与实现

  • 发表了文章 2024-05-15

    jrtplib开源库系列之三:jrtplib发送接收数据流程

  • 发表了文章 2024-05-15

    libevent-windows VS2019-cmake 编译笔记

  • 发表了文章 2024-05-15

    window10 虚拟机 linux ubuntu 环境下samba服务器配置

  • 发表了文章 2024-05-15

    QT资源文件-QFile Write/WriteOnly/ReadWrite打开失败说明

  • 发表了文章 2024-05-15

    c++11智能指针的基本使用

正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息
正在加载, 请稍后...
暂无更多信息