File tree Expand file tree Collapse file tree 1 file changed +0
-6
lines changed Expand file tree Collapse file tree 1 file changed +0
-6
lines changed Original file line number Diff line number Diff line change @@ -166,8 +166,6 @@ Swift 提供了两种办法用来解决你在使用类的属性时所遇到的
166166
167167弱引用不会牢牢保持住引用的实例,并且不会阻止 ARC 销毁被引用的实例。这种行为阻止了引用变为循环强引用。声明属性或者变量时,在前面加上` weak ` 关键字表明这是一个弱引用。
168168
169- 在实例的生命周期中,如果某些时候引用没有值,那么弱引用可以阻止循环强引用。如果引用总是有值,则可以使用无主引用,在[ 无主引用] ( #2 ) 中有描述。在上面Apartment的例子中,一个公寓的生命周期中,有时是没有“居民”的,因此适合使用弱引用来解决循环强引用。
170-
171169在实例的生命周期中,如果某些时候引用没有值,那么弱引用可以阻止循环强引用。如果引用总是有值,则可以使用无主引用,在[ 无主引用] ( #2 ) 中有描述。在上面` Apartment ` 的例子中,一个公寓的生命周期中,有时是没有“居民”的,因此适合使用弱引用来解决循环强引用。
172170
173171> 注意:
@@ -408,11 +406,7 @@ Swift 提供了一种优雅的方法来解决这个问题,称之为闭包占
408406
409407![ ] ( https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Art/closureReferenceCycle01_2x.png )
410408
411- <<<<<<< HEAD
412409实例的` asHTML ` 属性持有闭包的强引用。但是,闭包在其闭包体内使用了` self ` (引用了` self.name ` 和` self.text ` ),因此闭包占有了` self ` ,这意味着闭包又反过来持有了` HTMLElement ` 实例的强引用。这样两个对象就产生了循环强引用。(更多关于闭包占有值的信息,请参考[ 值捕获] ( 07_Closures.html ) )。
413- =======
414- 实例的asHTML属性持有闭包的强引用。但是,闭包在其闭包体内使用了self(引用了self.name和self.text),因此闭包占有了self,这意味着闭包又反过来持有了HTMLElement实例的强引用。这样两个对象就产生了循环强引用。(更多关于闭包占有值的信息,请参考[ 值捕获] ( ./07_Closures.html ) )。
415- >>>>>>> update reference pages
416410
417411> 注意:
418412>
You can’t perform that action at this time.
0 commit comments