I was going through "Pro. Objective-C Design Patterns for iOS" by Chung and found
_sharedSinglton = [[super allocWithZone: NULL] init];
I looked in Apple's documentation for NSCopying as well, but can't really understand what a ZONE really means.
I was going through "Pro. Objective-C Design Patterns for iOS" by Chung and found
_sharedSinglton = [[super allocWithZone: NULL] init];
I looked in Apple's documentation for NSCopying as well, but can't really understand what a ZONE really means.
NSZone
is obsolete now, but back in the NEXTSTEP days, NSZone
was an attempt to bring the concept of "malloc zones" into Cocoa. Here are some docs that described how it worked when it was enabled: http://www.cocoadev.com/index.pl?NSZone
-allocWithZone:
in this case is that their singleton pattern already overrode -alloc
, and they wanted an easy way to avoid their -alloc
override. -allocWithZone:
dodges the override (since they never overrode that method) but doesn't change any behavior compared to a normal -alloc
because zones are obsolete and don't do anything. Basically, this is a trick to dodge their own override of -alloc
in an easy way, and the zone part is irrelevant. –
Outpouring Zone
as an autorelease
pool (without autorelease functionality)? –
Nonprofessional © 2022 - 2024 — McMap. All rights reserved.
zone
asNULL
andDefault
? – Nonprofessional