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;

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

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

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

所以记录一下此问题

相关推荐
浅念-4 小时前
Linux 开发环境与工具链
linux·运维·服务器·数据结构·c++·经验分享
旺仔.2915 小时前
容器适配器:stack栈 、queue队列、priority queue优先级队列、bitset位图 详解
c++
潜创微科技--高清音视频芯片方案开发6 小时前
2026年C转DP芯片方案深度分析:从适配场景到成本性能的优选指南
c语言·开发语言
Thomas.Sir6 小时前
第三章:Python3 之 字符串
开发语言·python·字符串·string
刘景贤6 小时前
C/C++开发环境
开发语言·c++
Dxy12393102167 小时前
Python 根据列表中某字段排序:从基础到进阶
开发语言·windows·python
competes7 小时前
学生需求 交易累计积分,积分兑换奖品
java·大数据·开发语言·人工智能·java-ee
splage8 小时前
Java进阶——IO 流
java·开发语言·python
青桔柠薯片8 小时前
从C语言到裸机运行:i.MX6ULL 的 GPIO 控制与编译链接过程分析
c语言·开发语言·imx6ull