iOS异常、错误汇总(一)

1.

Xcode界面编辑器 could not insert new outlet connection


1.在新建类的时候没有选择将这个类加入到对应的“Target”中。 
2.重新将文件加入项目 
操作步骤就是选中出问题的.m和.h文件,点删除键,然后选“Remove Reference”,这样就不会真正删除文件。接着选“File -> Add Files to ...”菜单,在文件选择界面选择刚才的.m文件和.h文件将他们重新加入项目中。 
3. 直接删除DeriveData 
操作步骤是关闭当前项目,然后关闭Xcode,然后通过Terminal或者是Finder找到下面的目录: 
~/Library/Developer/XCode/DerivedData 
在里面找到以你的项目开头的文件,将他们删除。 
接着重新启动Xcode 
4. 在Organizer中删除项目的DeriveData 
如果你对Mac操作系统不了解,不知道如果操作第2种解决方法,有一个更加直接的方法,就是在Xcode中选择“Windows->Organizer”,然后选择“Projects”,选中你正在处理的项目,点击“DeriveData”对应的“Delete”按钮,Xcode会删除该项目的DeriveData,然后自动重新生成一个。


2、

表视图相关:

写了:const NSString *cellReuseIdentifier = @"cell";
警告:sending 'const NSString *' to parameter of type 'NSString *' discards qualifiers 
换成:NSString* const cellReuseIdentifier = @"cell";
前者相当于指针本身不可更改,后者为指针指向的内容不可更改。



3.

ARC forbids(禁止) explicit(显示) message send of 'dealloc'


4.

error: 'for' loop initial declarations are only allowed in C99 mode 
比如写出下面这段程序:
for (int j = i + 1; j < sizeof(a)/sizeof(a[0]); j++)
  do_something();
然后用gcc编译,会报 ‘for’ loop initial declarations are only allowed in C99 mode的错误。
原因是在循环条件中声明变量的话,只在C99标准中支持,C90标准不支持。
所以改成:
int j;
for (j = i + 1; j < sizeof(a)/sizeof(a[0]); j++)
  do_something();
这样编译就可以通过了。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值