循环引用问题
#import <Foundation/Foundation.h>
#import "Card.h"
#import "Person.h"
int main()
{
Person *p = [[Person alloc] init];
Card *c = [[Card alloc] init];
p.card = c;
c.person = p;
[c release];
[p release];
return 0;
}
#import "Card.h"
@interface Person : NSObject
@property (nonatomic, retain) Card *card;
@end
#import "Card.h"
@implementation Person
- (void)dealloc
{
NSLog(@"Person被销毁了");
[_card release];
[super dealloc];
}
@end
@class Person;
@interface Card : NSObject
@property (nonatomic, assign) Person *person;
@end
@implementation Card
- (void)dealloc
{
NSLog(@"Car被销毁了");
[super dealloc];
}
@end