- 博客(76)
- 收藏
- 关注
原创 GIT的上传和下载
直接创建空项目,填写Gitee上的地址即完成克隆。输入gitee上的地址(创建仓库时的地址)第一次的时候需要输入用户名(邮箱)和密码。选择全部提交,全部提交并同步。1.点击创建GIT存储仓库。从gitee上拉取项目。
2025-03-04 16:17:57
522
原创 QT-TCP客户端
连接成功会发送 connected信号。connectToHost(QHostAddress(ip地址),端口号);连接失败/断开连接会发送 disconnected信号。3.当点击按钮时,在点击函数中调用write();思路:需要定义一个槽函数中,调用read();在按钮connected,写个点击函数,进行连接和断开。思路:为这两个信号写两个槽函数。1.先创建标签和按钮。
2024-12-10 15:30:00
258
原创 设计模式——模板方法模式
模版方法模式是一种代码复用技术,他在类库中设计特别重要,它提取了类库中的公共行为,将公共行为放在父类,而通过其他子类来实现不同的行为,它鼓了我们恰当使用继承来实现代码复用。在模版方法模式中可以通过子类来覆盖父类的基本方法,不同子类可以提供基本方法的不同实现,更换和增加新的子类很方便,符合单一职责和开闭原则。在父类中定义一个算法,而右它的子类来实现细节处理,在子类实现详细的处理算法并不会改变算法中步骤的执行顺序。可实现一种反向控制结构,通过子类覆盖父类的钩子方法来决定是否需要执行。
2024-11-19 12:01:03
415
原创 设计模式——外观模式
4.网络切换:信号处理,资源管理,网络配置....这些实现非常复杂,可以通过外观模式来简化用户对这些(4g,5g)转换。1.迪米特法则:知道很少的事情就把问题解决了,两个类之间不必通信,也就是说,两个类之间不用相互的作用。1.汽车的控制系统:汽车中包含多个复杂的子系统,发动机,导航系统,空调系统,车载娱乐,通过外观模式,3.媒体播放器:在开发一个视频或音频播放器时,视频音频的解码,字幕处理,播放控制都是复杂的子系统。5.游戏的默认:背景音乐,分辨率,图形质量,鼠标的灵敏度,窗口的大小.......
2024-11-18 10:09:08
497
原创 C++文件的读取操作
fstream 对文件的读写操作,继承了ofstream\ifstream类的功能。1. ofstream 对文件的写操作,继承了ostream类的功能。ifstream 对文件的读操作,继承了istream类的功能。对文件操作,打开才能写。
2024-11-04 13:31:44
202
原创 设计模式之——简单工厂模式
果需要更改加法算法,只需要更改 Add 类就可以。如果要增加其他运算,比如平方根、正弦、自然对数等,只要增加相应的运算子类和修改运算类工厂(在 switch 中增加分支)即可。首先,定义一个产品的基类或接口,所有具体产品类都应该实现这个基类或接口。
2024-11-04 11:28:05
458
1
原创 设计模式之——单例模式
单例模式的作用确保一个类只有一个实例,并提供一个全局访问点来访问该实例。这种模式通常用于需要全局访问点的情况,比如日志记录器,配置管理,数据库连接...。可以通过单例模式,可以避免多个实例的创建的占用过多系统资源,同时也可以确保数据的一致性和避免多线程环境下的竞态条件。
2024-11-04 11:05:49
565
原创 C++——酒店管理系统
setName\setSex\setId (可选)构造函数 (读酒店信息文件进行构造)层数、每层房数、房间对象(三级指针)房号、房型、房价、入住数、旅客数组。姓名、性别、身份证号。酒店类:(单例模式)4 第一层房间数。
2024-10-28 17:28:15
1396
原创 网络聊天室项目:threadpool+network
2、接收客户端名字,告诉所有的在线的客户端,xxX进入聊天。3、接收客户端消息,转发给其他客户端。4、通知其他客户端 xxx退出聊天室。注意:任何客户端都可以随时进入或退出。1、开启线程池、等待客户端连接。5、同时在线人数最多50人。2、发送消息|接收消息。
2024-10-12 11:50:50
599
原创 连接工具的封装(支持TCP,UDP)的共享文件——network
使用 gcc code.c -lnetwork。3.工具已经封装好了,下面进行使用。将代码部分完成后,对其进行封装。1.写network.h。2.写network.c。
2024-10-11 08:33:48
503
原创 封装的线程池——threadpool
3.线程池已经封装好了,先在来写服务器,和客户端来测试。tcp_s.c:服务端。1.首先写一个队列来存,线程。2.利用队列,写一个线程池。tcp_c.c 客户端。
2024-10-10 16:16:27
344
1
原创 续二维指针,带头结点类型
1.fun函数的str是一个复制品,所以不能改变原函数的str的值。二级指针存储的是一级指针的地址。2.二级指针才能改一级指针的指向。
2024-10-09 17:36:10
233
原创 线程竞争死锁
4.环形等待:进程A在等待进程B持有的资源,进程B又在等待进程C持有的资源,最终进程C又在等待进程A持有的资源,这样就形成了一个循环等待的状态。3.资源不可剥夺:一旦某个线程或进程获得某个资源,就不能被其他进程或线程强制抢夺或剥夺,只有资源的占用才能完成任务后主释放。2.破坏占用且请求:采用预分配的方式,线程或进程在执行前,必须一次性的申请所有的资源,确保执行时不会有新的请求。缺点:系统的资源可能会严重的浪费,有的资源开始时使用,有的资源最后使用。缺点:现实的影响和资金的影响,共享内存很难实现。
2024-10-08 09:33:32
168
原创 整形提升-C语言
整型提升的原则:当一个小字节数,向大字节数转换时,有符号补0或1,无符号补0;32位 64位。为什么会发生测试结果呢,让我们来看一下。在64位的环境中char是1个字节8位。
2024-09-04 23:02:40
431
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人