找出对象循环引用里的 bug

来自 自动引用计数
Swift 6.3.3 进阶 4分钟 找出 1处问题

找出清空局部变量后两个析构器都不运行的原因。

swift
final class Playlist {
    var current: Song?
    deinit { print("playlist released") }
}

final class Song {
    var playlist: Playlist?
    deinit { print("song released") }
}

var playlist: Playlist? = Playlist()
var song: Song? = Song()
playlist?.current = song
song?.playlist = playlist
playlist = nil
song = nil
在试验场中打开
报告错误