本文共 494 字,大约阅读时间需要 1 分钟。
基于Cocos2D-X在Windows 7下开发Android程序时,常见的做法是先在Windows 32环境下调试,待项目接近成熟后再迁移至Eclipse环境进行真机测试。在此过程中,需要借助Cocos2D-X提供的NDK编译方案,通常使用GCC编译器进行编译。然而,Visual Studio 2010的C++编译器与GCC存在诸多差异,这可能导致在不同编译环境下程序表现不同。
作为一名开发者,我发现GCC比微软的C++编译器更严格。在Visual Studio下调试通过的程序,在GCC下并不意味着一定能通过编译。常见的错误之一就是“expected specifier-qualifier-list before ‘XXX’”(期望前置限定符列表 before ‘XXX’)。
这种错误通常发生在编译器无法识别“XXX”定义时。最近我遇到了一个类似的情况,代码中出现了“BYTE* ReadKey;”这一行,编译器提示的错误正是上述问题。
解决方法是在这一行稍微前面添加以下定义即可:
#define BYTE unsigned byte
这样修改后,编译问题就能得到妥善解决。
转载地址:http://wfcfk.baihongyu.com/