C++基础以及案例
本专栏主要介绍C++的一些基础知识和常见问题接替
泰勒朗斯
人,可以痛苦,可以失意,可以疯狂的爱,可以恣意的恨,却别忘了行程,别忘记赶路。
展开
-
Tsan-ThreadSanitizer之As if synchronized via sleep
最近在调试ffmpeg的时候,加入了tsan,结果出现了下面提示:具体什么意思呢,找了很久找到了官方介绍:原创 2024-08-02 11:31:22 · 293 阅读 · 0 评论 -
ThreadSanitizer: signal-unsafe call inside of a signal
下面的signal handler比如是一个pthread_once().这一类warrning,那么大概率你是犯了下面的错。原创 2024-07-29 16:58:52 · 258 阅读 · 0 评论 -
c++实现的一个简易计时器timer
C++实现的一个简易计时器,可以获取到ms。原创 2024-04-23 11:56:33 · 254 阅读 · 0 评论 -
C实现的双向链表队列
如下代码所示,一个头文件实现的双向链表,用c代码实现:#ifndef _LINUX_LIST_H#define _LINUX_LIST_H#include "stddef.h"#include "poison.h"#ifndef ARCH_HAS_PREFETCH#define ARCH_HAS_PREFETCHstatic inline void prefetch(const void *x) {;}#endif/* * Simple doubly linked list im原创 2023-11-29 11:19:57 · 693 阅读 · 0 评论 -
用c++写的sha1算法
/* * sha1.h * * Copyright (C) 1998, 2009 * Paul E. Jones <paulej@packetizer.com> * All Rights Reserved. * *****************************************************************************...原创 2019-08-24 11:27:12 · 2745 阅读 · 1 评论 -
线程池实现
这是一个线程池// ThredPool.cpp : 定义 DLL 应用程序的导出函数。//#ifndef _ThreadPool_H_#define _ThreadPool_H_//#ifdef THREDPOOL_EXPORTS//#define THREADPOOL_API extern "C" __declspec(dllexport)//#else//#define ...原创 2019-08-20 11:46:44 · 120 阅读 · 0 评论 -
定时关机
原创 2019-08-28 14:30:46 · 169 阅读 · 0 评论 -
一个简单的log用c++编写
#ifndef __debug_log__#define __debug_log__//#define __WRITE_FILE__#include <stdio.h>#include <time.h>#include <string.h>#include <stdarg.h>void DEBUG_LOG(const char *...原创 2019-08-24 11:25:32 · 954 阅读 · 0 评论 -
使用google breakpad生成dump文件
使用google breakpad生成dump文件breakpad的主要功能就是生成dump文件,还可以将dump文件发送的远程http服务器。breakpad的SVN在这里http://google-breakpad.googlecode.com/svn/trunklinux,mac,solaris,windows下面产生dump文件的例子文件在这几个文件里面,他们的流程几乎是一样的。s...原创 2019-08-03 15:47:28 · 741 阅读 · 0 评论 -
C++log日志实现
以下是一个比较完整的log实现方式#ifndef LOGFILE_H#define LOGFILE_H//#include "stdafx.h"//#include <stdio.h>//#include <string.h>//#include <algorithm>////#include <ctime>//#include...原创 2019-08-20 13:30:27 · 1456 阅读 · 0 评论 -
extern "C" __declspec(dllexport)用法
一般我们用c++写代码的时候,有时需要用到c的格式,并且这个工程要作为一个动态库输出,这是后就要用到extern “C” __declspec(dllexport)比如如下:#ifndef MYTEST_H#define MYTEST_H_H#ifdef MYTEST_H_DLL#ifdef MYTEST_H_EXPORTS#define MYTEST_H_API extern "...原创 2019-09-30 17:21:59 · 4543 阅读 · 0 评论 -
C++ 实现动态代理(不定参数模板使用方法)
下面是采用C++实现的一个动态代理的案例:背景:通过代理类Proxy将Base的派生类进行一个代理,比如,不满18周岁,就不能做里面的dowork重载函数#ifndef PROXY_H#define PROXY_H#include <functional>#include <iostream>#include <memory>#include <tuple>//这是基类class Base { public: using BasePt原创 2022-03-11 14:00:56 · 3230 阅读 · 2 评论 -
std::forward理解
首先说明就是std::forward主要是用来解决在参数传递的过程当中,右值被传递为左值,失去了原来的无拷贝功能。首先看下面例子:void myp(int &t) { std::cout << "lvalue" << std::endl;}void myp(int &&t) { std::cout << "rvalue" << std::endl;}//这里说明一下,在模板函数中&&代表的是原创 2021-12-14 20:33:31 · 3274 阅读 · 1 评论 -
c++类父类模板化template<class T> class Derived:public T{}
第一次看到这个是懵逼的:template<typename Parent>class FrameInternal : public Parent{public: typedef std::shared_ptr<FrameInternal> Ptr; FrameInternal(const Frame::Ptr &parent_frame, char *ptr, size_t size, size_t prefix_size) :原创 2021-03-25 15:44:37 · 1088 阅读 · 0 评论 -
opencv应用海康案例-拍照并识别方框
从图片识别到方框并且截取出来,以下是全部代码:// hkOpenCVtest.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>#include <windows.h>#include <opencv2\opencv.hpp>#include <opencv2\highgui.hpp>//#include <opencv\opencv.hpp>#inclu..原创 2020-05-28 20:41:18 · 1264 阅读 · 0 评论 -
Jsoncpp与中文出现的问题
一般我们在vs中都是GBK编码,如果我们要给json赋值一个中文字符串怎么办jsRes[“body”][“message”] =“我是中国人”;对方收到是一串类似\u8bc6\u522b\u5931\u8d25 \u9700\u7ee7\u7eed\u62cd\u7167看着是Unicode,但是转码后又不是,怎么办呢。看我怎么处理,如果直接赋值中文这么办:std::string Gbk...原创 2020-04-23 23:01:38 · 613 阅读 · 0 评论 -
信号之sigsuspend函数理解
上图是一个进程PCB中管理的两个集合:1)未决信号集 2)屏蔽信号集这两个集合都是位图,也就是64个信号一个占1bit.当触发一个信号以后,未决信号集中立马将0变为1,然后根据设定的处理过程去处理信号的时候1变为0。屏蔽信号集就是当某个设定为1的时候,触发一个信号,未决信号集中也相应变为1,但是这个时候,这个信号是无法处理的,只有等待屏蔽信号集解除,即1-》0后,这才去处理。sigsusp...原创 2020-02-21 17:59:57 · 1259 阅读 · 1 评论 -
从相机rtsp拉流(YUV格式)后,通过H.264压缩后,上传到Rtmp服务器
https://blog.csdn.net/yangdashi888/article/details/52289036从这个博客可以看一下相机输出流的格式有三种:YUV、H264、MJEPG今天这个教程从相机获取到的流是YUV,所以我们从相机拉流(Rtsp协议),然后压缩,上传到Rtmp服务器。http://www.sohu.com/a/326613777_100268913https:/...原创 2020-02-18 11:50:57 · 1119 阅读 · 0 评论 -
sed: -e expression #1, char 7: unterminated `s' command 错误解决
学习sed,,跟着教程pang@cdd:~/shelltest$ sed `s/192.168/hello/g` sed.txt-bash: s/192.168/hello/g: No such file or directorysed: -e expression #1, char 7: unterminated `s' command出现这种错误,后来发现是s/192.168/he...原创 2020-02-16 14:32:20 · 22873 阅读 · 0 评论 -
如何搭建一个http服务器
https://blog.csdn.net/u012234115/article/details/79596826注意他的回复里面有详细的result=0的说明原创 2019-12-19 15:53:43 · 2198 阅读 · 1 评论 -
算法题1-反转字符串(用到递归)
//通过不同的方法,实现对所输入字符串的反转,可以很好地复习巩固 C++ 基础知识/*分析过程: 假设要使传递的字符串为常量const字符串,这样操作更加灵活,可直接传递字符串字面值进行反转,常见的解决方法就是,定义一个新的与传递过来字符串长度 相等的字符数组,然后进行字符串拷贝,把str字符按从左到右放置到字符数组中,然后采用循环来对字符数组中字符反转*//*第一种,采用以上思路解...原创 2019-12-11 18:27:02 · 155 阅读 · 0 评论 -
关于websocket的理解
https://www.cnblogs.com/songwenjie/p/8575579.html这个博主很详细的介绍了抓包流程来解释websocket原创 2019-12-06 10:07:52 · 95 阅读 · 0 评论 -
cjson源码
/* Copyright (c) 2009 Dave Gamble Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal i...原创 2019-11-25 10:47:45 · 242 阅读 · 0 评论 -
时序图绘图软件
流程图制作工具和图表绘制软件 - Microsoft VisioProcessOn-代替visio的免费在线流程图软件_无需下载原创 2019-11-08 14:20:58 · 849 阅读 · 0 评论 -
车辆识别模块(git)
https://github.com/CaptainEven/Vehicle-Car-detection-and-multilabel-classification训练好的模型文件(包括车辆检测模型和多标签分类模型) trained models on baidu driveTranied models-vehicle detectionTranied models-vehicle clas...原创 2019-10-25 11:02:29 · 1286 阅读 · 0 评论 -
Jsoncpp中删除某个数组的一项
我的json为TaskList:{“cmd":1,“task” :[{ "loop" : 60000, }, { "loop" : 6000, }]}TaskList[“task”].removeIndex(i,nullptr);Json::Value root;Json::Value delete;root.removeInde...原创 2019-10-17 14:18:58 · 2340 阅读 · 0 评论 -
C++中MySQL应用案例
这是一个完整的MySQL应用案例:采用的MySQLversion MySQL Server 5.7// mysqltest.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include "mysql.h"int main(){ MYSQL g_mySQLHandle_ex; MYSQL_RES *result = NULL; MY...原创 2019-10-12 10:32:49 · 293 阅读 · 0 评论