今天编译项目的时候,犯了一个低级错误,VS报错报的莫名其妙,错误信息如下
1>d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/kernel/qeventloop.h(51): error C2146: 语法错误: 缺少“;”(在标识符“QtCoreModule”的前面)
1>d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/kernel/qeventloop.h(51): error C2371: “QtValidLicenseForCoreModule”: 重定义;不同的基类型
1> d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/global/qglobal.h(2726) : 参见“QtValidLicenseForCoreModule”的声明
1> moc_tCom.cpp
1>GeneratedFiles\Debug\moc_tCom.cpp(19): error C2146: 语法错误: 缺少“;”(在标识符“qt_meta_data_TCom”的前面)
1>GeneratedFiles\Debug\moc_tCom.cpp(19): error C2377: “uint”: 重定义;typedef 不能由任何其他符号重载
1> d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/global/qglobal.h(996) : 参见“uint”的声明
1>GeneratedFiles\Debug\moc_tCom.cpp(19): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>GeneratedFiles\Debug\moc_tCom.cpp(61): error C2440: “初始化”: 无法从“int [20]”转换为“const uint *”
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1> econde.cpp
1>d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/kernel/qeventloop.h(51): error C2146: 语法错误: 缺少“;”(在标识符“QtCoreModule”的前面)
1>d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/kernel/qeventloop.h(51): error C2371: “QtValidLicenseForCoreModule”: 重定义;不同的基类型
1> d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/global/qglobal.h(2726) : 参见“QtValidLicenseForCoreModule”的声明
1> main.cpp
1>d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/kernel/qeventloop.h(51): error C2146: 语法错误: 缺少“;”(在标识符“QtCoreModule”的前面)
1>d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/kernel/qeventloop.h(51): error C2371: “QtValidLicenseForCoreModule”: 重定义;不同的基类型
1> d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/global/qglobal.h(2726) : 参见“QtValidLicenseForCoreModule”的声明
1> tCom.cpp
1>d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/io/qdatastream.h(57): error C2146: 语法错误: 缺少“;”(在标识符“QtCoreModule”的前面)
1>d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/io/qdatastream.h(57): error C2371: “QtValidLicenseForCoreModule”: 重定义;不同的基类型
1> d:\softwareforcode\qt4_8\include\qtcore\../../src/corelib/global/qglobal.h(2726) : 参见“QtValidLicenseForCoreModule”的声明
结果后来检查发现,竟然是声明类的时候,最后面的"}"后面没有加";"。为了避免以后再犯这种错误,所以写上来,警示自己。