chenBright

211
获赞数
2
关注数
57
粉丝数
广州
广东工业大学 | 计算机
IP 属地未知
2016-09-26 加入
浏览 9.1k

学习算法C++linux

817 声望|达人
全站排名超越 98% 用户
javascript
725
vue.js
551
webpack
550
vue-cli
519
codewars
164
黄金勋章
暂未获得该勋章
如何获得
白银勋章
暂未获得该勋章
如何获得
个人动态
  • 发布了文章2019-12-17
    使用Docker搭建Linuc C++编译环境
    我现在做的是 Linux C++ 开发,但手头上没有 Linux 设备。目前的常用的方法有两种: 云主机; 虚拟机。 但是使用云主机不方便,使用虚拟机对电脑有一定要求。还有第三种方法:Docker。 本文介绍我使用 Docker 搭的一个 Linux C++ 编译环境。以下是我的需求: 可远程...
  • 发布了文章2019-12-11
    std::forward() 源码分析
    当t是左值引用时,此时推到得到T = X&,则T&&展开为X& &&,经过引用折叠后得到X&,即最后返回static_cast<X&>(t)。
  • 发布了文章2019-10-30
    C++ 分割字符串函数 split
    当str不为NULL,则从头开始搜索第一个合法的分隔符,然后使用'\0'替换分隔符,并使用静态变量(strtok版本)或者传入的变量(strtok_t版本)保存分隔符的位置,最后返回str。因为 C 风格的字符串是以'\0'结尾的,所以调用函数后就能得到分割的第一个字符串。
  • 发布了文章2019-10-26
    我“写”了一个低效的STL子集
    tinySTL 本人参考《STL源码剖析》“写”了一个低效的STL 子集。代码中有比较详细的注释,可作为阅读《STL源码剖析》的辅助材料。 本项目为本人的练习项目,所以暂时未提供测试,不能保证完全正确。请多多包涵。 至于怎么“低效”了,我后面会整理一些我已经能预见到会低...
  • 发布了文章2019-10-25
    使用 C++ 封装互斥量、条件变量
    本文使用 C++ RAII 机制来封装互斥量、条件变量,使其自动管理互斥量、条件变量的生命周期,避免手动维护带来的资源泄露等各种问题。本文使用的是 Linux 下 Pthread 库。
  • 发布了文章2019-10-25
    基于 C++ 11 实现的多线程 Web 服务器
    本人参照《Linux多线程服务端编程》,以及模仿该书使用的muduo,写了一个轻量的 Web 服务器。 源码 Github。代码中有比较详细的注释,可作为看《Linux多线程服务端编程》的辅助材料。 已完成 完成基本的Tcp(被动连接)库; 简易的HTTP服务器,可访问主页HTML和网站f...
  • 发布了文章2019-10-20
    std::move()源码分析
    C++11 引入右值和移动语义,其中std::move()是不可或缺的。现在我们才看看std::move()是这么实现的。 remove_reference 在分析std::move()之前,先看看remove_reference,下面是remove_reference的实现: {代码...} remove_reference的作用是去除T中的引用部分,只获...
  • 发布了文章2019-09-16
    C++ noncopyable类
    在muduo中,有一个noncopyable类,继承了该类的派生类不能被拷贝,只能被移动。涉及拷贝的函数有两个:拷贝构造函数和拷贝复制操作符。将这两个方法声明为不可访问或者删除(=delete),即可达到不可拷贝的效果。
  • 发布了文章2019-03-03
    C++回声服务器_9-epoll边缘触发模式版本服务器
    epoll默认情况下是水平触发模式,这次将epoll设置为边缘触发模式来实现服务器,而客户端直接使用完美回声服务器的客户端。 服务器代码 {代码...} 项目代码 github 参考 《TCP/IP网络编程》
  • 发布了文章2019-03-03
    C++回声服务器_8-epoll版本服务器
    这次使用epoll函数实现服务器,而客户端直接使用完美回声服务器的客户端。 服务器代码 {代码...} 优点 无需编写以监视状态变化为目的的针对所有文件描述符的循环语句。 调用对应于select函数的epoll_wait函数是无需每次传递监视对象信息。 项目代码 github 参考 《TC...
  • 发布了文章2019-03-02
    C++回声服务器_7-select版本服务器
    这次使用select函数实现服务器,而客户端直接使用C++回声服务器_2-修复客户端问题的客户端。 服务器代码 {代码...} 缺点 需要编写以监视状态变化为目的的针对所有文件描述符的循环语句; 每次调用select函数时需要传递监视对象信息。 优点 系统兼容性好,几乎所有的...
  • 发布了文章2019-02-27
    C++回声服务器_6-多进程pipe版本服务器
    在服务器多进程版本的基础上,使用管道来向一个子进程发送接收到的数据,该子进程将接收到的数据保存到文件中。客户端代码不变。 服务器代码 {代码...} 项目代码 github 参考 《TCP/IP网络编程》
  • 发布了文章2019-02-27
    C++回声服务器_5-多进程版本
    服务器和客户端都是用多进程来接收和发送数据。 服务器代码 {代码...} 客户端代码 {代码...} 辅助函数 {代码...} 项目代码 github 参考 《TCP/IP网络编程》
  • 发布了文章2019-02-27
    C++回声服务器_4-UDP connect版本客户端
    服务器代码不需要修改,只需修改客户端代码。调用connect函数之后,可以调用write函数和read函数来发送、接收数据,而不需要调用sendto函数和recvfrom函数。
  • 发布了文章2019-02-26
    C++回声服务器_3-UDP版本
    这次我们实现一个UDP版本的回声服务器。 用于传输数据的函数 UDP套接字不会像TCP套接字那样保持连接状态,因此每次传输数据都要添加目标地址信息。 用于传输数据的函数: 发送数据到目标服务器。 {代码...} ​ 其中to为存有目标服务器地址信息的sockaddr结构体变量的...
  • 发布了文章2019-02-24
    C++回声服务器_2-修复客户端问题
    C++回声服务器_1-简单版本中的问题出在客户端。客户端通过write函数一次性发送数据,过一段时间再调用一次read函数,期望接收传输的数据。问题在于这段时间到底是多久?理想的客户端应在接收到数据时立即读取数据。
  • 发布了文章2019-02-23
    C++回声服务器_1-简单版本
    C++网络编程离不开socket编程。我们现在使用socket编写简单的回声服务器。 流程 这里所说的流程包括两部分: socket函数调用流程。 服务器与客户端交互流程。 socket函数调用流程 服务器与客户端交互流程 回声服务器主要功能:服务器将接收到来自客户端的数据传回客...
  • 发布了文章2017-03-10
    vue-cli webpack配置分析
    过完年回来后,我接手了公司的新项目。新项目是一个spa。很自然,我就想到了vue-cli脚手架了,当时研究一下它的webpack配置。于是,就有了其他的内容。
  • 回答了问题2017-03-10
    有什么可以批量将原来文档中的tab换为4个空格
    editorconfig
  • 赞了文章2017-02-12
    科学处理多个 Vue 项目中共用的组件的 Events 和 Vuex
    我们在做项目的时候,应该会有这种情况: "我写了一个组件,然后做成了 npm 包,然后给好几个项目一起用。" Vue 组件也是可以这么干的,所以在公司内部可能会将组件封装成 npm 模块后分发给各个项目。 不过在 Vue 的项目中,有两个小地方可能需要精心处理下 (●’◡’●) ...