Qt QPainterpath.h errors
Qt QPainterpath.h errors
我目前正在使用Qt
库中的许多#include
文件开发Qt
应用程序。这个项目很大,我在建设的时候遇到了一个奇怪的问题。显示的错误都在QPainterpath.h
文件中,但与我的项目对它的调用无关。这些错误看起来都是这样的:
c:qt4.8.4includeqtgui../../src/gui/painting/qpainterpath.h(397):错误C2143:语法错误:在'::'之前缺少';'
c:qt4.8.4includeqtgui../../src/gui/painting/qpainterpath.h(397): error C2059:语法错误:'::'
c:qt4.8.4includeqtgui../../src/gui/painting/qpainterpath.h(398):错误C2143:语法错误:在"{"之前缺少";"
c:qt4.8.4includeqtgui../../src/gui/painting/qpainterpath.h(398):错误C2447: '{':缺少函数头(旧式正式列表?)
c:qt4.8.4includeqtgui../…/src/gui/painting/qpainterpath.h(405):警告C4003:宏'elementCount'的实际参数不足
我曾经遇到过这个问题,并且能够通过移动一些Qt
#include语句来解决它,这些语句在它们下面的其他类头文件之前调用。但我似乎弄不清楚这次到底是什么原因造成的。任何想法都很棒!
谢谢!
当您忘记使用分号关闭类定义时,就会发生这种情况。如果您查看编译器的输出,并查看在此错误开始之前编译了哪个文件,您可能会得到答案。查找在先前编译的文件末尾缺少;
或额外的}
或缺少}
的语法错误。
它也可能来自上面列出的.h
文件,您的#include <QPainter>
调用有错误。
希望对你有帮助。
我正在与RyGuyFalcore一起工作,并找出了为什么这发生在我们的代码中,而没有其他人看到它。问题是我们的遗留代码重新定义了elementCount宏。因此,如果我们在包含Qt代码之前包含了遗留代码的那一部分,就会使用错误的宏:(我想我会在这里发布这篇文章,以避免其他人在遇到类似的错误时可能遇到的任何徒劳的追逐。
- 使用 GCC 卸载的 OpenMP 卸载失败,并出现"Ptx assembly aborted due to errors"
- LNK2005 AND LNK1169 Errors - C++
- C++ errors - C4819, C2761, C2447
- Write QPainterPath to XML
- 如何将QPixMap转换为QPainterPath,反之亦然
- Visual Studio Build Errors not in UI
- 有效地在 QPainterPath 周围绘制文本
- STL reverse_iterator errors
- C++ Class Errors
- gnustl (libstdc++) to llvm (libc++ ) errors
- HDF5 + Eclipse CDT errors
- osip library sip errors
- wxSmith Code::Blocks Hello World errors
- 派生的QPainterPath,QPainter性能迅速下降
- SDL errors Visual Studio 2013
- Iomanip errors with std::left/right
- C++ Errors: LNK2001 and LNK1120
- Ubuntu Make File Errors
- QPainterPath QTransform::map
- Qt QPainterpath.h errors