Pra*_*d G 1 iphone nsmutablearray uicolor ios
当我将UIColor对象添加到数组中时,我收到了Thread1: Program received signal: “SIGBRT”此错误.
NSMutableArray *array =[[NSMutableArray alloc] init];
UIColor *color1,*color2, *color3,*color4;
color1 = [UIColor blueColor];
color2 = [UIColor colorWithHue:0.5
saturation:0.1
brightness:0.2
alpha:1.0];
color3 = color2;
[array addObject:color1];//No Problem
[array addObject:color2];//No Problem
[array addObject:color3];//No Problem
[array addObject:color4];//Problem is here.....
Run Code Online (Sandbox Code Playgroud)
当我将前三个对象添加到数组中时没有问题.但是当我添加最后一个对象时,我得到错误.这段代码有什么问题?我应该像前三个对象一样将任何东西分配给第四个对象(color4)吗?有必要吗?为什么?...
请举例说明.提前致谢.
小智 6
在你没有初始化指针(color4)之前,它指向一个未定义的位置,在该位置可能没有对象,只是垃圾.也许它甚至不是一个有效的menory位置.解除引用时,它会在故意情况下崩溃.您需要将其初始化为有效对象.
此外,该对象不能nil或NSMutableArray本身将抛出异常.
| 归档时间: |
|
| 查看次数: |
3120 次 |
| 最近记录: |