下午给这个问题搞了几个小时,模拟器上编译和运行都没有问题,要上真机跑时突然出现若干xx undeclare (first use in this function)的错误,实际上这个变量继承自基类,找了很久都没看出有问题,一时有点挠头,把有关错误的编码都屏蔽后,又从另外的文件中冒出一堆类似的错误,联想到XCode的报错有时会相当的不靠谱,只在错误代码上有时就是找不到,错误很可能时其他地方导致的,但是编译器会指引到其他地方,这种错误绝对可以恶习死你。google一番,果然是类似的错误,解决方法如下
One solution I found is to simply change the compiler from the default LLVM GCC 4.2 to LLVM Compiler 2.0 (or to `Apple LLVM Compiler 2.1). It seems to be a bug in the compiler, but it is just a guess.
降低编译器的版本,原因可能很多,@synthesize的时候写错变量名称,或者@synthesize xx=yy;实际上yy不存在等,查花了眼睛后,宣布放弃,tnnd,错误不一定在报错的文件,相关几个类费了老劲查了一下,还是每能完全解决,随他去吧。
相关链接如下:
http://stackoverflow.com/questions/5977005/strange-error-regarding-instance-variables-superclass
http://stackoverflow.com/questions/6119835/variable-undeclared-only-when-compiling-for-device
http://www.iphonegamekit.com/forum/topic/wont-compile-to-device-simulator-fine
One solution I found is to simply change the compiler from the default LLVM GCC 4.2 to LLVM Compiler 2.0 (or to `Apple LLVM Compiler 2.1). It seems to be a bug in the compiler, but it is just a guess.
降低编译器的版本,原因可能很多,@synthesize的时候写错变量名称,或者@synthesize xx=yy;实际上yy不存在等,查花了眼睛后,宣布放弃,tnnd,错误不一定在报错的文件,相关几个类费了老劲查了一下,还是每能完全解决,随他去吧。
相关链接如下:
http://stackoverflow.com/questions/5977005/strange-error-regarding-instance-variables-superclass
http://stackoverflow.com/questions/6119835/variable-undeclared-only-when-compiling-for-device
http://www.iphonegamekit.com/forum/topic/wont-compile-to-device-simulator-fine