自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (1)
  • 收藏
  • 关注

原创 命名空间

std标准命名空间  标准命名空间是c++委员会维护的一个空间,我们不可以加入模板类,否则有未定义行为。但是我们可以对标准命名空间的类进行特化来完成一些需求。class myClass{xxx * p;}namespace std{template<>void swap<myclass> ( myclass & a , myclass &amp...

2018-04-28 11:06:15 90

原创 event源码

event对象所描述的实体文件信号超时   libevent所描述的对象也就是这三个文件、信号、超时。那么在event_add函数中,也会把相应的event结构体插入到相应的队列中。其中IO队列是方便当同一文件描述符就绪时,把该文件描述符相关的event第一时间找到,信号队列也一样也是为了当同一信号发生时把所有event找到,超时事件则由超时堆来管理。...

2018-04-21 21:10:02 143

原创 终究BUG字面值

字面值引发的bug  默认1的字面值类型是int , 3.14默认字面值类型是double 。那么今天在写代码的时候就遇到一个很难发现的bug。int64_t xxx;xxx = 1<<63;  这个时候,我们认为1<<63位,把1当作一个long int 的类型(默认指64位机器 ,32位下long 为4字节并非8字节 ),其实 1 默认是 int ...

2018-04-20 16:26:48 94

原创 Makefile的坑

一定要记住make clean列子a.out : main.o a.o g++ -o a.out main.o a.omain.o : main.cc g++ -c main.cc a.o : a.c g++ -c a.c.PHONY:cleanclean : rm -rf main.o a.o  这个坑是这样的,比如你先前生成...

2018-04-19 17:03:58 353

原创 用c++文件I/O

读取文件  之前读取从文件读取一行内容寻找分割符的时候自己实现不一定正确,而且代码过多。我们可以用c++ 的 istream来处理。#include<fstream>void ReadFile(const char * pathname){ std::ifstream iofile(pathname); std::string line; ...

2018-04-19 10:51:45 201

原创 event

概念 Libevent的基本操作单元就是event。每一个事件都代表一列情况: 1.文件描述符就绪 2.时间器就绪 3.信号就绪 4.用户事件就绪 这几个事件有相同的生命周期,一旦通过调用event_new 设置 event 并与 event_base相关联后,event 事件就会被初始化。初始化后,当我们使用这个event的时候,需要先把它注册到event_base中,通过even...

2018-04-17 18:23:51 372

原创 EventLoop

active  何为活跃就是事件就绪,如果事件就绪 event循坏会把该事件标志为就绪。可设置的event循坏 int event_base_loop(struct event_base *base, int flags)#define EVLOOP_ONCE 0x01 // 代表就循坏1次#define EVLOOP_NONBLOCK ...

2018-04-17 16:36:37 277

空空如也

空空如也

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

TA关注的人

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