Simple Obj-C Memory Management Question
- by yar
This is from some sample code from a book
// On launch, create a basic window
- (void)applicationDidFinishLaunching:(UIApplication *)application {
UIWindow *window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:[[HelloController alloc] init]];
[window addSubview:nav.view];
[window makeKeyAndVisible];
}
But a release is never called for window nor for nav.
Release should be called since alloc was called, right?
If #1 is right, then I would need to store a reference to each of these in an instance variable in order to release them in the dealloc?
Perhaps I'm wrong all around...