越来越容易的 Objective-c XCode4.5以后

本文介绍了如何检查Xcode 5项目中是否启用了ARC(自动引用计数),并对比了ARC启用前后Objective-C代码的变化,如属性声明、数组及字典的创建和使用等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

How to Determine if ARC is Enabled in Xcode 5 Project

判断ARC是否开启的代码

Here’s a quick code check for ARC (Automatic Reference Counting):

#if __has_feature(objc_arc)
  // ARC
#else
  // No ARC
#endif


以前声明属性 要这样

.h

@property (nonatomic, strong) NSString * username
.m

 @synthesize username = _username;


现在只要


.h

@property (nonatomic, strong) NSString * username



以前 

NSNumber*number=[NSNumbernumberWithInt:1];

NSArray*array=[NSArrayarrayWithObjects:@"one",@"two",nil];

NSDictionary*dict=[NSDictionarydictionaryWithObjectsAndKeys:@"value1",@"key1",@"value2",@"key2",nil];

现在只要

NSNumber*number = @1;

NSArray*array = @[@"one",@"two"];

NSDictionary*dict = @{@"key1":@"value1",@"key2":@"value2"};


以前 

NSString *str= [arrayobjectAtIndex:0];

现在

 NSString *str array[0];

这样也可以 array[1] = @”VW Jetta”;

上述初始化数组的代码默认创建不可变数组。如果需要可变数组,则还需要进一步调用mutableCopy方法,创建可变数组。也一样
NSMutableArray *carMakes = [@[@"Chevy", @"BMW", @"Toyota", @"Volvo", @"Smart"]mutableCopy];

NSDictionary也一样,包括可变

NSDictionary *bookListing = {key1 : object1, key2 : object2, key3 : object3};

和数组一样,下标可用来访问字典项,如下使用key1下标来访问bookListing字典对象:
bookObject = bookListing[key1];
相同地,如下代码可更新bookListing字典对象中key2键所对应的对象值:
bookListing[key2] = newBookObject;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值