【发布时间】:2017-01-04 20:22:09
【问题描述】:
我想获取 ram 插槽内存并将其转换为 GB。我使用具有属性容量的 WMI、Win32_PhysicalMemory 类。
代码:
QString userRAMCapacity = QString::fromWCharArray(ramCapacity.bstrVal);
使用 Qt 函数时 -
QString::fromWCharArray(ramCapacity.bstrVal);
我获得了适当的 ram 插槽内存容量(以字节为单位),但我无法将其转换为 GB。我尝试使用另一个功能 -
QString::number(ramCapacity.uintVal),
它可以工作,但显示错误的内存量。请帮助解决此问题。提前致谢。
【问题讨论】:
-
but I can't convert it to GB为什么? -
转换为GB时:userRAMCapacity = QString::fromWCharArray(ramCapacity.bstrVal) / (1024) / (1024) / (1024);错误:错误:C2678:二进制“/”:未找到采用“QString”类型左侧操作数的运算符(或没有可接受的转换)
-
没错,因为您正在尝试转换字符串,所以先将其转换为数字,然后再进行其余的数学运算
-
我知道我使用了错误的类型,但是如何转换为数字?当使用 QString::number(ramCapacity.uintVal) / (1024) / (1024) / (1024) 它显示不正确的值。
-
在下面查看我的答案
标签: c++ qt wmi ram windows-applications