摘要: 在c/c++中输入彩色日志输出,带有带有颜色的打印 #ifndef __PTINTCOLOR_H #define __PTINTCOLOR_H #include <stdio.h> #ifndef LOG_DBG //颜色宏定义 #define NONE "\033[m" #define RED " 阅读全文
posted @ 2022-01-18 23:25 xutopia 阅读(355) 评论(0) 推荐(0) 编辑
摘要: c++仿照go语言,程序返回错误时,可以附加错误信息 #ifndef __ERRORMSG_H_ #define __ERRORMSG_H_ #include <string> struct Errormsg { typedef enum { OK = 0, ERR = 1, } HerrorCod 阅读全文
posted @ 2022-01-18 23:23 xutopia 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 基于libevent的http服务器实现 //libevent的http服务器简单实现方式 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <string.h> //for struct evkeyvalq #i 阅读全文
posted @ 2022-01-16 23:05 xutopia 阅读(621) 评论(0) 推荐(0) 编辑
摘要: I/O多路复用是指:通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。 原生socket客户端在与服务端建立连接时,即服务端调用accept方法时是阻塞的,同时服务端和客户端在收发数据(调用recv、send、sendall)时也是阻塞的 阅读全文
posted @ 2022-01-16 00:14 xutopia 阅读(714) 评论(0) 推荐(0) 编辑
摘要: c++智能指针的使用 官方参考 普通指针的烦恼:内存泄漏,多次释放,提前释放 智能指针 负责自动释放所指向的对象。 三种智能指针 shared_ptr,unique_ptr,weak_ptr; 将shared_ptr存放在一个容器中,不再需要它的时候,要erase掉。 allocator负责封装堆内 阅读全文
posted @ 2022-01-11 12:17 xutopia 阅读(415) 评论(0) 推荐(0) 编辑
摘要: c++的左值(lvalue),右值(rvalue),移动语义(move),完美转发(forward) c++的左值,右值 精辟总结 当一个对象被用作右值的时候,使用的是对象的值(内容);当对象被用作左值的时候,用的是对象的身份(在内存中的位置)左值右值,完美转发参考文档。 左值持久,右值短暂;mov 阅读全文
posted @ 2022-01-09 20:11 xutopia 阅读(433) 评论(0) 推荐(0) 编辑
摘要: c++的bind使用方法 除了容器有适配器之外,其实函数也提供了适配器,适配器的特点就是将一个类型改装成为拥有子集功能的新的类型。其中函数的适配器典型的就是通过std::bind来实现。 stdbind函数定义在头文件functional中,是一个函数模板,它就像一个函数适配器,接受一个可调用对象( 阅读全文
posted @ 2022-01-05 21:29 xutopia 阅读(743) 评论(0) 推荐(0) 编辑
摘要: 在linux中使用tcpdump抓包的方法: 1,运行下面命令来从所有网卡中捕获数据包: tcpdump -i any 2,从指定网卡中捕获数据包 tcpdump -i eth0 3,指定网卡,IP地址,写入文件 tcpdump -i eth0 host 10.19.150.242 -w ./dat 阅读全文
posted @ 2021-12-27 23:47 xutopia 阅读(4443) 评论(0) 推荐(0) 编辑
摘要: vscode配置指南,美化技巧 vscode****选中部分高亮 "workbench.colorCustomizations": { "editor.selectionBackground": "#4a8672", "editor.selectionHighlightBackground":"#4 阅读全文
posted @ 2021-12-22 23:28 xutopia 阅读(510) 评论(0) 推荐(0) 编辑
摘要: 1,模板类编译的问题 前两天在写代码时,把模板类的声明和分开放在两个文件中了,类似于下面这样: stack.hpp: #ifndef _STACK_HPP #define _STACK_HPP template <typename Type> class stack { public: stack( 阅读全文
posted @ 2021-12-21 16:05 xutopia 阅读(465) 评论(0) 推荐(0) 编辑