
c++
热爱生活热爱你
文章设置vip,还请支持!如果您实在想阅读,请留言私信,看到后单发你哦~!
展开
-
Qt5 读写共享内存,已验证,支持汉字的正确写入和读取
相比网上其他介绍的方法,大部分均不支持汉字的正常读取,下面方法已经做了汉字存储的支持,可以进行测试;Qt5,读写共享内存,Windows下同一个进程下可测试;通过查看控制台输出即可看到写入和读出的内容;下面方法通过添加按钮事件触发即可测试。原创 2024-10-30 15:54:22 · 378 阅读 · 0 评论 -
Windows QT c++ 动态折线图 X轴更新
QT_CHARTS_USE_NAMESPACE //必须要有这个宏 不然不支持QCharts;发布 Windows Qt5.15.2 MinGW 64-bit。2、DynamicChart继承QChartView。开发不易,站在别人肩膀上快速开发迭代;私信留微信,付费提供源码;原创 2024-10-28 16:58:42 · 194 阅读 · 0 评论 -
QMediaPlayer播放视频叠加透明元素
本问主要解决QMediaPlayer在播放视频过程中,希望在视频中叠加其他元素显示时候,会出现通过qss设置等方式设置透明背景无效的问题。原创 2024-10-28 15:54:03 · 449 阅读 · 0 评论 -
log4cxx-1.2.0安装及cmakelist集成
log4cxx-1.2.0安装及cmakelist集成原创 2024-08-02 10:52:48 · 297 阅读 · 0 评论 -
ubuntu20 下 qtcreator ros配置过程
ubuntu20 下 qtcreator ros配置过程原创 2022-08-24 18:15:51 · 1179 阅读 · 3 评论 -
C++之log4cpp库
c++ log4cpp使用记录原创 2022-08-08 15:04:39 · 317 阅读 · 0 评论 -
QT读取GPS信息,信息组包,防止异常错乱
读取$GNRMC经纬度信息;处理类似$GNRMC,064401.65,A,3110.4706987,N”"110.3568,E,0.604,243.2,30,0713,0.0,W,A*3E”或者$GNRMC信息一包不完整的情况,不然程序会偶发宕机;头文件引用头文件引用#include <QSerialPort>#include <QSerialPortInfo>private slots: void serialRead();private:原创 2022-05-31 17:09:08 · 1671 阅读 · 0 评论 -
c++定时器,linux已测试ok
本文只做记录使用,方便后续查找,感谢作者!c++定时器_搁浅的渔的博客-优快云博客_c++定时器CTime.h文件#ifndef EXCAVATORSERVICE_CTIMER_H#define EXCAVATORSERVICE_CTIMER_H#include <functional>#include <chrono>#include <thread>#include <atomic>#include <memory&原创 2022-04-13 11:42:47 · 298 阅读 · 0 评论 -
linux服务端下的c++ udp socket demo
linux服务端 udp socket demo 如下://创建接受数据的socket int iSock = socket(PF_INET,SOCK_DGRAM,0); printf("socket ss:%d \n",iSock ); struct sockaddr_in server_sockaddr; memset(&server_sockaddr, 0, sizeof(server_sockaddr)); //配置sockaddr_in 结.原创 2022-04-07 17:23:00 · 3132 阅读 · 0 评论 -
clion同一个项目创建多个可执行文件
简述需求:需要写多个可执行文件,但是文件一些工具类等都是通用的,比较麻烦的就是创建多个项目,下来让你一个项目中生成多个可执行文件,用到那个编译那个就可以了。默认创建好项目后,项目会生成cmake-build-debug目录、CMakeLists.txt、main.cpp这个时候默认的main.cpp就是你的默认项目的可执行文件了CMakeLists.txt如下:cmake_minimum_required(VERSION 3.21)project(test) //这里是项目.原创 2022-03-30 14:26:44 · 4387 阅读 · 1 评论 -
redis的hscan替换hgetall的疑问,redis返回列表获取数据示例
在hash表中通过hgetall方法获取全部的key和value害怕之后影响效率!想要通过hscan来通过游标分页获取,恭喜你,想的是对的,但是通过实测每次hscan给的数量和游标都没有效果,返回全部的数据!这里通过查询得知,当hash表的数据小于一定量的时候(1023条,不一定正确),hscan模式返回的是全部数据的,返回的游标也是0;想要预留的的话,可通过判断返回值的游标、返回type、返回数量来做自己的定制处理;当返回游标为0时候,表示已经返回完数据了,type表REDIS_REP原创 2022-03-29 11:15:29 · 2331 阅读 · 0 评论 -
c++ 序列化,结构转json
站在巨人的肩膀上,提高效率,避免重复造轮;感谢作者!使用示例:#include <iostream>#include "xpack/json.h" // Json包含这个头文件,xml则包含xpack/xml.husing namespace std;struct User { int id; string name; XPACK(O(id, name)); // 添加宏定义XPACK在结构体定义结尾};int main(int argc, c原创 2022-03-25 10:47:16 · 1930 阅读 · 0 评论 -
boost 共享内存上创建一个复杂的map
此仅为记录参考:参考文档1:用boost在共享内存上创建一个复杂的map_phonzia的博客-优快云博客参考文档2:使用Boost将stl map放入共享内存_涟漪、的博客-优快云博客原创 2022-03-18 10:21:35 · 426 阅读 · 0 评论 -
Clion 打包exe无法运行 且 cmd窗口中文乱码
打包exe无法运行CMakeLists.txt文件中添加set(CMAKE_EXE_LINKER_FLAGS "-static")cmd中文乱码clion中的项目文件编码都是默认utf-8,mingw经过编译处理之后生成的文件也是utf-8,但是cmd默认按照gbk编码处理。在main方法中添加以下代码即可解决问题。system("chcp 65001"); //为了解决命令行显示中文乱码clion可控制台乱码1、clion打开 快捷键 Ctrl+Shift+Alt+/2、取消勾选,.原创 2022-03-04 13:56:34 · 1912 阅读 · 0 评论 -
windows客户端和linux服务端下的c++ tcp socket demo
window下的客户端参考文档 安装MinGW:https://blog.youkuaiyun.com/weixin_43141320/article/details/114487461CMakeLists.txt添加,要在add_executable前面link_libraries(ws2_32 wsock32)#include <iostream>#include <string>#include <cstring>#include <winsock2原创 2022-03-03 18:00:08 · 1422 阅读 · 0 评论 -
c++ map在遍历中删除元素
c++在遍历中删除元素需要注意,不然很容易引起宕机map<int,int>::iterator itr;for(itr=testmap.begin(); itr!=testmap.end(); ){ //++itr 这里要注意不要添加,留空 int ikey = itr->first; int ivalue = itr->second; if(1==1){ testmap..erase(...原创 2022-03-03 17:47:45 · 2505 阅读 · 0 评论 -
Ubuntu c++ 使用redis clion工具
安装hiredis过hiredis.h接口来实现,目前只能在Linux环境使用。apt-get install libhiredis-devCMakeLists.txt需要填写include_directories(/usr/local/include/hiredis)link_directories(/usr/local/lib)link_libraries(hiredis)这部分一定要在add_executable 上面如果有问题说明库libhiredis.so位置不对找不到.原创 2022-03-03 17:15:07 · 691 阅读 · 0 评论 -
linux下命令行方式的音量控制
输入命令:alsamixer;//设置系统音量,这个百分比会有一定的误差存在amixer set Speaker 100% //设置系统麦克风amixer set Mic 100%c++代码可以执行运行上面的命令:QString yl = "amixer set Speaker 100%"; QByteArray cmd; cmd.append(yl); //也可以 ba2 = s2.toLatin1(); const ...原创 2022-01-25 11:02:19 · 3460 阅读 · 0 评论