• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Resend: array = [NSArray new] or array = [NSArray array]?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Resend: array = [NSArray new] or array = [NSArray array]?


  • Subject: Re: Resend: array = [NSArray new] or array = [NSArray array]?
  • From: Alex Zavatone <email@hidden>
  • Date: Fri, 19 Aug 2016 13:52:05 -0500

To all who replied, thank you.  This is awesome.

Thanks for outlining the difference between the two.  Now I know and can ignore it.  But if I didn't, I'd always be wondering.

This certainly puts my mind at ease.  Well, at least with regards to [NSArray new].  Other issues shall remain uneased for the moment.

Cheers.
- Alex Zavatone

On Aug 19, 2016, at 12:59 PM, Gary L. Wade wrote:

> The class method new is the same as alloc/init although by implementation, it may be faster if the class doesn't need to pass a placeholder object from alloc—some classes do that. The class method array is much like alloc/init/autorelease in the MRC days although it may coalesce things, but that's an implementation detail you as a user shouldn't be too concerned about.
>
> The biggest cause for concern is if you're writing this code in MRC vs ARC since you'd have to manage these memory points yourself.
> --
> Gary L. Wade (Sent from my iPhone)
> http://www.garywade.com/
>
>> On Aug 16, 2016, at 7:42 AM, Alex Zavatone <email@hidden> wrote:
>>
>> I sent this out this morning but it got eaten, so this is a resend.  Sorry if it gets to some of you twice.
>>
>>
>>
>> Yes, I know about literals, but I have a different question here.
>>
>>
>> Is this safe?
>>
>> I have seen this in some code in our codebase:
>> array = [NSArray new];
>>
>> I'm familiar with using the public method from the NSArray header and what the docs say to use:
>> or array = [NSArray array];
>>
>> Is there any risk to using [NSArray new] to init an array instead of [NSArray array]??
>>
>> I'm surprised to see this being used in our codebase and would like to make sure we are not destroying the universe by using it.
>>
>> Thank you in advance.
>> - Alex Zavatone
>>
>


_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


References: 
 >Class is implemented in both (From: Trygve Inda <email@hidden>)
 >Re: Class is implemented in both (From: Stephane Sudre <email@hidden>)
 >Re: Class is implemented in both (From: Stephane Sudre <email@hidden>)
 >Resend: array = [NSArray new] or array = [NSArray array]? (From: Alex Zavatone <email@hidden>)
 >Re: Resend: array = [NSArray new] or array = [NSArray array]? (From: "Gary L. Wade" <email@hidden>)

  • Prev by Date: Re: Resend: array = [NSArray new] or array = [NSArray array]?
  • Next by Date: Re: odd drawInsertionPointInRect behavior
  • Previous by thread: Re: Resend: array = [NSArray new] or array = [NSArray array]?
  • Next by thread: Re: Class is implemented in both
  • Index(es):
    • Date
    • Thread