allocWithZone:
Returns a new instance of the receiving class.
Declaration
+ (instancetype) allocWithZone:(struct _NSZone *) zone;Parameters
- zone:
This parameter is ignored.
Return Value
A new instance of the receiver.
Discussion
The isa instance variable of the new instance is initialized to a data structure that describes the class; memory for all other instance variables is set to 0.
You must use an init... method to complete the initialization process. For example:
TheClass *newObject = [[TheClass allocWithZone:nil] init];Do not override allocWithZone: to include any initialization code. Instead, class-specific versions of init... methods.
This method exists for historical reasons; memory zones are no longer used by Objective-C.