質問: storyboard { } else { // vc.storyboardとstoryboardのアドレスは同じなのに処理はこちらにきてしまう } } ``` ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/150ddd3062eb5967a0f651244492add1.png) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/c3d4adbd9603a58aa0021c0be8316af3.png) ↑2つのアドレスは同じなのに ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/fda4f47dd6b87e644d4656e6f2e96d65.png) 結果は違う方に行ってしまう ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/6a82c2bc88437a8d0db3bac35242b868.png) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/fb13a6b952f0730d6c9811f4f1a8ca44.png) ![unsafeAddressOfでアドレスを取得](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/2aa10a126f7652b1ec3ac9db628544c6.png) ![アドレス結果](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/700b7c3f8e1509899a5c23e40b9ff5d5.png) ### 補足情報(言語/FW/ツール等のバージョンなど) Xcode(7.3.1) iOS_simulator(iphone6s)
回答: 検証は全く行っていませんので、ただのアイデアだと思って下さい。 isEqual ======== ``` if (vc.storyboard.isEqual(storyboard)) { print("equal") } ``` .hash ====== **一意で有効なプロパティ**になるのかどうか分かりませんが。 ``` if (vc.storyboard.hash == storyboard.hash) { print("equal") } ```