Xcode 4.3.2で、空のアプリテンプレートを使用して新しいiOSプロジェクトが作成された場合、次のようになりAppDelegate.m
ます。
self.window.rootViewController = [[FooViewController alloc] init];
およびFooViewController
'sviewDidLoad
では、次のようになります。
NSLog(@"self.view is %p", self.view);
NSLog(@"self.view is %@", self.view);
ビューを印刷するので、デフォルトでloadView
はビューがインスタンス化されてに割り当てられるように見えますself.view
。
したがってloadView
、すべて空のメソッドでオーバーライドし、上記の2番目のステートメントをコメントアウトするとNSLog
、最初のNSLog
ステートメントが出力されると思います0x0
が、その代わりに、その行でのメモリアクセスが悪いためにアプリがクラッシュしましたNSLog
。なぜそうなるのでしょうか?