自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (1)
  • 问答 (15)
  • 收藏
  • 关注

原创 在IOCP框架下实现基于TCP通讯的高并发聊天功能

/*使用技术:1. IOCP框架2. 多线程及其同步3. 线程池4. 回调函数的优雅实现//实现功能:1. 客户端启动后自动连接服务器,断开后自动重连机制2. 客户端与客户端通讯都需要通过服务器中转3. 客户端之间聊天模式类似于钉钉,会提示消息发送成功以及消息已送达功能4. 服务器对客户端接入、断线、以及重连都有做相应处理//实现过程中思考的问题:1. IOCP如何...

2018-11-14 19:24:01 1114

原创 C++自定义线程池以及通过线程池处理业务展示

本实例通过3部分进行展示:将线程池定义成一个类,用来管理线程,该线程池设计成单例模式设计了一个工作类,即工作线程类,用于处理业务(使用基于事件的同步方式和原子操作同步方式)设计了一个任务分发管理类,用于模拟实际业务使用线程池实现处理业务自定义事件类:.h#pragma once#include<windows.h>class LanEvent{public:La...

2018-11-08 19:36:56 699

原创 C++智能指针作为函数形参和函数返回值的应用场景

当智能指针作为函数形参时,在调用此函数时,形参代表的智能指针的引用计数将+1,同时退出此函数时,该形参的引用计数将-1.当形参不是智能指针时,调用该函数和退出该函数时,该形参的引用计数不会变化:当函数的内部创建一个智能指针,并需要在函数外使用时,此时,函数的返回值必须为该智能指针类型(即函数内创建的智能指针退出该函数时,引用计数不会-1),否则,当函数体执行结束时,该智能指针引用计数...

2018-11-23 17:38:05 12277 1

原创 C++智能指针

STL一共给我们提供了4种智能指针:auto_ptr、unique_ptr、sharedptr和weak_ptr(本文档暂不介绍)。C++所有的智能指针类都有一个“explicit”构造函数(使其不能使用隐式转换!!),以指针作为参数。比如auto_ptr的类的模板原型为:因此,不能自动将指针转换为智能指针对象,“必须显示调用”,例子如下:对于智能指针都应该避免一点:即:不要将“...

2018-11-23 11:41:24 85

转载 C++ explicit关键字

***C++ explicit关键字***explicit用来防止由构造函数定义的隐式转换。google的c++规范中提到explicit的优点是可以避免不合时宜的类型变换,缺点无。所以google约定所有单参数的构造函数都必须是显示的,只有极少数情况下拷贝构造函数可以不声明称explicit。例如作为其他类的透明包装器的类。effective c++中说:被声明为exp...

2018-11-23 09:27:50 82

原创 二叉树及其演变的二叉树

二叉树,完全二叉树,满二叉树,平衡二叉树的区别度:指的是一个节点拥有子节点的个数。如二叉树的节点的最大度为2。 深度:树的层数,根节点为第一层,依次类推。 叶子节点:度为0的节点,即没有子节点的节点。树:树的每一个节点,可以有n(后续节点)个子节点,但每个节点只有一个前驱节点。二叉树:除叶子节点外,每个节点只有两个分支,一个是左子树,另一个为右子树,每个节点的最大度数为2。满二...

2018-11-09 10:08:11 152

TCP IP通讯学习记要

读《TCP IP网络编程》书记要。此文档为该书的读书笔记,记录其核心内容

2018-10-23

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

TA关注的人

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