如果在.pro文件中添加了"QT += charts"并且出现了类似于"error: C2872: 'byte': ambiguous symbol"的报错信息,这可能是由于在Qt 6中引入了std::byte,从而与Windows SDK中的byte冲突。
解决此问题的方法之一是在.pro文件中添加以下语句:
QMAKE_CXXFLAGS += /Zc:__cplusplus
这将确保在编译时使用C++17版本的__cplusplus宏定义,而不是Windows SDK中的版本。这应该解决由std::byte和Windows SDK中的byte冲突引起的问题。
还是没有解决问题,改用qCustomPlot还是报一样的错误。最后把pro文件中的C++17改成C++11就好了(反正用低于C++17的版本就不会报错)