有两个属性,如下所示
#import <Foundation/Foundation.h>
@interface Contact : NSObject
@property(nonatomic, strong)NSDate *birthDay;
@property(nonatomic, weak)NSDate *birthDay1;
- (void)testWeakProperty;
@end
实现文件为:</p>
- (void)testWeakProperty {
self.birthDay = [NSDate dateWithTimeIntervalSinceNow:0];
self.birthDay1 = self.birthDay;
self.birthDay = nil;
NSLog(@"_birthday1 is %@, %@", self.birthDay1 , self.birthDay);
}
为什么结果不是_birthday1
is (null), (null)
?
我发现
iOS ARC 的弱和强属性。如果self.birthDay
是常量,则不会被释放。但是有[NSDate dateWithTimeIntervalSinceNow:0]
,
现在我想知道返回值是否为常量以及如何验证声明结果是常量和变量。