Qt C++ 在windows上三目运算不断增加内存

今天在做摄像头项目的时候,运行程序很卡

打开任务管理器发现程序内存一直在增加

函数内部无任何的 new 和 malloc操作

最后在nv12转rgb像素转换函数发现是因为三目运算导致内存不断增长

cpp 复制代码
r = r > 255 ? 255 : (r < 0 ? 0 : r);
g = g > 255 ? 255 : (g < 0 ? 0 : g);
b = b > 255 ? 255 : (b < 0 ? 0 : b);

最后替换了if

解决了这个问题

cpp 复制代码
if (r > 255) r = 255; if (r < 0) r = 0;
if (g > 255) g = 255; if (g < 0) g = 0;
if (b > 255) b = 255; if (b < 0) b = 0;

由于平时测试的摄像头分辨率都比较低,所以这个问题不太突出

今天换了个高分辨率的镜头才出现了这个问题

找了很久才定位到三目运算的问题

所以记录一下此问题

相关推荐
Linux520小飞鱼12 分钟前
F#语言的网络编程
开发语言·后端·golang
weixin_3992642917 分钟前
QT c++ 样式 设置 标签(QLabel)的渐变色美化
开发语言·c++·qt
吾当每日三饮五升3 小时前
C++单例模式跨DLL调用问题梳理
开发语言·c++·单例模式
猫武士水星4 小时前
C++ scanf
开发语言·c++
BinaryBardC4 小时前
Bash语言的数据类型
开发语言·后端·golang
Lang_xi_4 小时前
Bash Shell的操作环境
linux·开发语言·bash
Pandaconda4 小时前
【Golang 面试题】每日 3 题(二十一)
开发语言·笔记·后端·面试·职场和发展·golang·go
捕鲸叉5 小时前
QT自定义工具条渐变背景颜色一例
开发语言·前端·c++·qt
想要入门的程序猿5 小时前
Qt菜单栏、工具栏、状态栏(右键)
开发语言·数据库·qt
Rossy Yan5 小时前
【C++面向对象——群体类和群体数据的组织】实现含排序功能的数组类(头歌实践教学平台习题)【合集】
c++·排序算法·面向对象·封装·查找