Effective Objective-C 2.0の中に、ZombieObjectの事が書いてあり面白かったので、自分なりにまとめてみました。 ZombieObjectの話の前に、解放されたオブジェクトにアクセスするとどうなるのか?の話をします。 解放されたオブジェクトにアクセスするとどうなるのか? 使い終わり解放されたオブジェクトにアクセスすると、普通はクラッシュします。ARCの登場以前は、呼吸をするようにクラッシュしてましたが、ARC以後はその頻度も減りました。でもまだクラッシュするときはします。ニンゲンダモノ。シカタガナイネ。 このとき、「偶然にもクラッシュしない」場合が発生します。これは、オブジェクトを解放後、そのアドレスでアクセスした場合に、ゴミデータにアクセスできてしまったり、別オブジェクトがそこに割り当てられていたりなど、いろいろな原因があり得ます。 ↑の例では、_assig
![ZombieObjectとは何か - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/fa4059742ad318b94aebc1e8fca82d86e658e390/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9Wm9tYmllT2JqZWN0JUUzJTgxJUE4JUUzJTgxJUFGJUU0JUJEJTk1JUUzJTgxJThCJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1lNjAwM2RlNjQzMTc3MzZjODIxOGJkNDMzMGVlZTAxNQ%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwcGFtaW5nJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1jYjE3MjdiNTY3ZjZmZmNkNWM1ZGUxMmE5YzM1MjE5Nw%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D0088016ff2d35eb42c08dbc4e857996e)