
c/c++
文章平均质量分 66
c/c++相关的
fensnote
嵌入式linux系统设计开发
C/CPP Qt应用开发
展开
-
一个不错的的rpc开源代码-rest_rpc
rest_rpc[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y9tvMv9T-1646029963066)(https://travis-ci.org/qicosmos/rest_rpc.svg?branch=master)]c++11, high performance, cross platform, easy to use rpc framework.It’s so easy to love RPC.Modern C++开发的RPC库就是这么简单好用!res原创 2022-02-28 14:33:20 · 4013 阅读 · 0 评论 -
C++11日志之spdlog
c++日志工具spdlogspdlog日志是纯头文件,使用起来比较方便。使用时只需要简单的初始化即可,这里对其初始化做了一个简单的封装,这样使用起来更加方便。封装类代码头文件cspdlog.h#ifndef _CSPDLOG_H_#define _CSPDLOG_H_#include "spdlog/spdlog.h"#include "spdlog/fmt/bin_to_hex.h"#include <memory>#include <string>cl原创 2021-08-17 15:44:26 · 1390 阅读 · 2 评论 -
推荐一个比较好用的c++版本http协议库-cpp-httplib
码云地址:https://mp.youkuaiyun.com/console/homecpp-httplib(https://ci.appveyor.com/project/yhirose/cpp-httplib)A C++11 header-only HTTP library.It’s extremely easy to setup. Just include httplib.h file in your code!Inspired by Sinatra and express.Server Exam.原创 2021-06-08 09:55:50 · 6855 阅读 · 0 评论 -
google测试框架
文章目录介绍代码目录安装教程编译安装gtest:使用说明目录介绍码云地址介绍谷歌测试框架,对其做了一些修改;做了一个测试代码的通用Makefile.inc脚本;这样只需要写测试代码和配置测试代码的Makefile里面对应的文件即可。代码目录gtest-1.6.0: google gtest测试框架源码test_gtest:测试demo的代码与makefile安装教程编译安装gtest:cd gtest-1.6.0./configure #生成makefilemake -j4su原创 2021-05-03 16:35:27 · 767 阅读 · 2 评论 -
C/C++给文件加crc校验
概述CRC16/32校验是常用的一种校验方法,crc16需要区分多项式,不同多项式的校验结果是不一样的,如果是对通信数据做校验,那收发两端的crc16一定要匹配,否则校验不通过。对文件加crc校验对文件夹crc校验的的目的也是为了验证文件的完整性。添加crc校验是一种简单的验证方式。这里用到一个小技巧:就是把文件数据的校验码追加在文件的最后,这样既不会影响文件的数据,也不影响文件属性,并且也方便检查,不需要额外在加一个文件。代码#include <iost..原创 2021-04-28 08:54:24 · 5165 阅读 · 2 评论 -
ofstream错误:error: variable ‘std::ofstream ofs’ has initializer but incomplete type
在使用std::ofstream写文件时,编译器提示如下错误:error: variable ‘std::ofstream ofs’ has initializer but incomplete type std::ofstream ofs(string(TMP_STATE_FILE));这个错误上由于没有保护头文件导致的。包含上头文件,编译通过。#include<fstream> ...原创 2021-03-08 15:30:14 · 4666 阅读 · 0 评论 -
关于thread使用的错误:pure virtual method called terminate called without an active exception
今天遇到一个问题,错误提示如下:pure virtual method calledterminate called without an active exception在网上搜了下,查到的问题原因大多数纯虚函数调用的问题。我程序里确实有纯虚函数调用,但是子类已经将其实现了,并且在调用时,也实例化了子类,没有查到匹配答案。只能进一步查找问题,加调试信息。还有个比较奇怪的现象,我用gdb去运行程序,想单步跟一下,可以是用gdb运行时,却有不出问题了!只能通过加日志来查了,最后查到是原创 2021-03-08 14:36:11 · 1128 阅读 · 0 评论 -
C语言Log工具推荐-easylogger
文章目录日志简述EasyLogger简介编译运行附录EasyLogger说明1. 介绍1.1 主要特性1.2 插件1.3 Star & Fork2. 使用2.1 参数配置2.2 输出级别2.2.1 输出缤纷多彩的日志2.3 输出过滤2.4 输出格式2.5 输出方式2.6 Demo2.6.1 核心功能2.6.2 Flash Log(将日志保存到 Flash 中)2.6.2 File Log(将日志保存到文件中)3. 文档4. 后期5. 许可日志简述C/CPP的日志工具也很多,在之前的项目中用过的有原创 2021-02-28 11:03:16 · 3493 阅读 · 4 评论 -
C++11 std::lock_guard 互斥锁
C++11中加入了线程,引入了多线程,也就伴随着一个多线程资源互斥的操作。对于锁的使用,有一个比较头疼的问题,就是在加锁后,容易忘记解锁,这样程序中可能会造成死锁。C++11中加入了lock_guard,这个的使用,可以让你不用关注解锁!原理是这样的:这个是利用了C++的特性(析构函数),用法是在函数开始的地方声明一个lock_guard对象,构造函数中启用加锁,函数结束的时候,这个lock_guard对象作用域也就结束了,自动析构,析构时会自动释放锁!这样是不是很省心~#include...原创 2020-10-05 11:47:41 · 1497 阅读 · 0 评论 -
(转)Linux 下栈溢出问题分析解决 *** stack smashing detected *** XXXX terminated
Linux 下栈溢出问题分析解决 *** stack smashing detected *** XXXX terminated1、利用gdb 或者valgrind 定位到具体的代码最近在Linux下调试程序,程序异常终止,具体现象如下*** stack smashing detected ***: ../out/Load terminatedAborted (core dumped)利用GDB调试程序下如下*** stack smashing detected ***: /wan转载 2020-07-24 10:15:26 · 1581 阅读 · 0 评论 -
推荐:实现RTSP/RTMP/HLS/HTTP协议的轻量级流媒体框架,支持大并发连接请求
推荐一个比较好用的流媒体服务开源代码:ZLMediaKit: 实现RTSP/RTMP/HLS/HTTP协议的轻量级流媒体框架,支持大并发连接请求https://gitee.com/xiahcu/ZLMediaKit文章目录一个基于C++11的高性能运营级流媒体服务框架项目特点项目定位功能清单其他功能细节表后续任务编译要求编译(Linux)编译(macOS)编译(iOS)编译(Androi...原创 2020-05-05 15:11:21 · 1895 阅读 · 5 评论 -
值得推荐的C/C++框架和库 (真的很强大)
值得学习的C语言开源项目- 1. WebbenchWebbench是一个在Linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行。下载链接:http://home.tiscali.cz/~cz2...转载 2020-02-20 10:56:55 · 584 阅读 · 2 评论 -
boost之signal的使用
文章目录简介代码模板实现:测试代码运行结果简介boost是C++的一个扩展库,被称为C++准标准库,里面的组件很丰富,并且引用方便,85%的组件只需要引用头文件即可使用。并且在嵌入式系统也可以很方便的使用,这里介绍一下signal的使用,有点类似Qt里的信号槽。可以接收静态函数、类成员函数、labmda表达式。下面这个是使用signal封装的一个事件注册处理模板,使用起来还是很方便的。...原创 2020-03-24 07:51:22 · 1718 阅读 · 0 评论