Objective-C - 循环引用问题
2015-04-21 09:06
288 查看
循环引用问题
/* 1.@class的作用:仅仅告诉编译器,某个名称是一个类 @class Person; // 仅仅告诉编译器,Person是一个类 2.开发中引用一个类的规范 1> 在.h文件中用@class来声明类 2> 在.m文件中用#import来包含类的所有东西 3.两端循环引用解决方案 1> 一端用retain 2> 一端用assign */ #import <Foundation/Foundation.h> #import "Card.h" #import "Person.h" int main() { // p - 1 Person *p = [[Person alloc] init]; // c - 1 Card *c = [[Card alloc] init]; // c - 2 p.card = c; // p - 1 c.person = p; // c - 1 [c release]; // p - 0 c - 0 [p release]; return 0; }
#import "Card.h" // @class仅仅是告诉编译器,Card是一个类 //@class Card; @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被销毁了"); // [_person release]; [super dealloc]; } @end
相关文章推荐
- Objective-c中block使用时的循环引用问题
- Objective-C中循环引用的问题 深入剖析实用版
- objective-c基础语法学习之--(6)内存管理经典问题:循环引用
- 0c-41-ARC下循环引用问题
- 详解在springmvc中解决FastJson循环引用的问题
- ARC下循环引用的问题 ++ 整理
- js循环里进行回调,引用循环里的变量,发现只是最后值的问题
- Windows Phone中解决多模块多程序集之间相互循环引用的问题一种思路
- 实际开发中-Block导致循环引用的问题
- iOS开发——Block循环引用问题的解决
- X-code -- xcode8之Memory Graph实战解决闭包引用循环问题
- 【Java】消除fastjson对同一对象循环引用的问题
- ios 中的循环引用问题及解决
- 小胖说swift07-------- swift协议代理的使用以及解决循环引用问题
- 封装一个GCD定时器,彻底解决定时器循环引用、释放时机问题
- Objective - C基础: 第六天 - 3.ARC循环引用
- 36.block循环引用的问题
- block的学习(block和timer的循环引用问题)
- 此类目的是防治序列化Json字符串时的循环引用问题-------最好解决方案
- PHP中的&传值引用的问题,在foreach循环的结果能帮解释下输出的结果原理是什么?