首页 > 解决方案 > QTime 在 linux 和 windows 平台上表现不同

问题描述

我有在 linux 和 windows 中运行的相同 Qt 代码。但它在每种情况下的作用都不同。在 linux 中它的行为是正确的,但在 windows 中却不是。

在linux中它的行为如下

在 Windows 中,它的行为如下

您可以看到在 Windows 平台中它返回空字符串,而在 linux 平台中它的行为符合预期。可能是什么原因 ?

标签: c++linuxwindowsqtqtime

解决方案


的默认构造函数QTime产生一个invalid时间,大多数在无效时间上的操作将失败或返回另一个无效时间。调用addSecs仍然会给您留下无效时间,并且调用toString无效时间会返回一个空字符串。

要构建QTime午夜,您需要使用:

QTime time(0,0);

推荐阅读