C++
蛮三
这个作者很懒,什么都没留下…
展开
-
手把手理解C++20协程的编译实现
考虑下面的协程代码#include <iostream>#include <coroutine>using namespace std;class Resumable{};Resumable func() { cout << "hello"; co_await std::suspend_always(); cout << " world";}int main(){ }编译报错...原创 2021-05-09 16:29:26 · 719 阅读 · 0 评论 -
快速排序
#include <random>#include <iostream>#include <string>#include <vector>using namespace std;void quick_sort(int ar[], int l, int r){ // check if(r <= l) return; if(r - l == 1) { if(ar[l] > ar[r])原创 2021-05-08 22:11:12 · 182 阅读 · 1 评论 -
用 epoll 实现 tcp 回显服务器
环境ubuntu20GCC10.2Python3.8问题描述运行client程序,通过TCP连接到server上client向server发送用户输入,server将输入按原样返回。当用户键入‘q’时,client主动断开连接。当用户键入‘quit’时,server主动断开连接。程序平稳运行。服务器代码内含部分个人封装,接口规范参考python中的select和socket模块#include <sys/fcntl.h>#include <sys/socket原创 2021-05-08 12:19:11 · 238 阅读 · 0 评论 -
给郝东写的在vs2019上配置opencv的教程
s.b team-viewer 用不了,只能写个破教程了reference:https://blog.csdn.net/qq_41175905/article/details/805604291. 解压opencv到自己想安装的目录我解压到了这里2.配置环境变量目的是让任何程序能在运行时找到opencv的动态库3.配置vs先新建一个空项目,配置项目属性1. 添加头文件...原创 2020-03-07 17:20:05 · 175 阅读 · 0 评论 -
C++高级操作
代码原则class用于封装对变量的直接处理操作namespace 用于封装功能模块, 以及该功能模块里的拓展函数file 用于区分编译边界, 一个模块里可能会有好几个编译边界这个很难说清楚就地构造函数(C++11)先分配好内存, 再运行构造函数, 最后以移动构造函数的方式把值传递回去template <typename _T, typename ...Arg>_T ...原创 2019-10-20 10:54:14 · 231 阅读 · 0 评论 -
HTTP实战中学习
请求一个网页命令行敲入$ curl -v -I hdcjh.xyz意思是仅显示请求头和响应头requestHEAD / HTTP/1.1Host: hdcjh.xyzUser-Agent: curl/7.58.0 Accept: */* responseHTTP/1.1 200 OKServer: nginx/1.10.3 (Ubuntu)Date: Fri, 11 Oc...原创 2019-10-11 17:18:53 · 346 阅读 · 0 评论 -
简易视频推流方法
目的写一个专门用于视频编码的线程, 包含从摄像头获取流和编码.每当完成一帧的视频编码, 就等待主线程拿走这一帧, 主线程拿走以后又立即开始下一帧的获取和编码.接口:VideoStreamopen(config)close()get() -> BuffergetConfig() -> Config基本原理以下demo用到了 asio#include <as...原创 2019-10-06 15:11:43 · 2815 阅读 · 0 评论 -
一篇搞定ASIO
跟着官方例子走第一部分 timer异步timer#include <asio.hpp>#include <iostream>using namespace std;using namespace asio;void print(const error_code &err){ cout << "Hello Wolrd" <...原创 2019-10-03 15:45:53 · 4320 阅读 · 1 评论 -
Boost.Python 使用方法
hello worldhttps://www.boost.org/doc/libs/1_71_0/libs/python/doc/html/tutorial/tutorial/exposing.html按照这里的写完以后编译用下面的方法:#!/bin/bash# 模块名称必须和 .so 库一致!!!module_name=$1g++ -shared -fPIC -o $module_...原创 2019-10-03 11:16:59 · 332 阅读 · 0 评论 -
实时监控协议
目的快速开发一个实时视频监控的 Camera 端因此这里写文章的目的是明确需求应用场景实时视频监控、动态捕捉摄像头原理基于RUDP的数据流,在树莓派4b上使用OpeCV的 VideoCapture 获取视频帧,压缩为 jpg 格式以后发送到对端。当对端为控制服务器时,保存图像及时间戳,当用户从 web 访问时,推送 jpg 图像给浏览器并刷新控制服务器原理使用 Django 开发...原创 2019-10-01 20:10:03 · 599 阅读 · 0 评论