windows平台下当lua文件执行出错时,以前的版本是会打印出错信息到终端命令窗口的,现在不行了,我看了下,出错时使用的是CCLOG函数,该函数是无法输出信息到终端命令窗口,好像只能输出到VC的输出窗口,而实际上用Lua写的话不需要打开VC,这样就造成了调试的麻烦,我以前都是直接编译好了exe,然后执行就可以看到输出窗口的信息,就能调试了。
于是我就改源码ccluaengine.cpp,把里面的CCLOG都改成了printf,这样可以了。可是又出现了问题,就是android平台又不能输出到eclipse的log了,最后没理法,只好自己定义了一个宏针对两个平台分别输出:
#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
#define CCLuaError(format, …) cocos2d::CCLog(format, ##VA_ARGS)
#else
#define CCLuaError(format, …) printf(format, ##VA_ARGS)
#endif
不过我觉得这样解决不是理法,最好是下个版本的源码里把这个问题解决下。