MainWindow.cpp:26:26: Call to 'qRound' is ambiguous qglobal.h:525:29: candidate function qglobal.h:527:29: candidate function
时间: 2023-07-02 15:05:24 浏览: 205
mainwindow.cpp
这个错误是因为 `qRound` 函数有多个重载版本,编译器无法确定应该调用哪一个。你可以尝试显式地指定参数类型,或者使用 `static_cast` 进行强制类型转换来解决这个问题。
例如,如果你想对一个 `double` 类型的变量 `x` 进行四舍五入并转换为整型,可以这样写:
```cpp
int rounded = qRound(static_cast<qreal>(x)); // 显式指定参数类型并进行强制类型转换
```
另外,如果你使用的是 Qt 5.15 或更高版本,可以使用 `qFastRound` 函数来替代 `qRound` 函数。`qFastRound` 函数只有一个重载版本,可以避免上述错误。
阅读全文