Le 21 juil. 2011 à 01:48, Jean-Daniel Dupas a écrit :

> 
> Le 21 juil. 2011 à 00:30, Jens Alfke a écrit :
> 
>> 
>> On Jul 20, 2011, at 2:34 PM, Andreas Grosam wrote:
>> 
>>> According the doc, the parameter "capacity" in function 
>>> CFDictionaryCreateMutable() sets the *maximum number* of key-value pairs 
>>> which can be inserted into the container. That is, it's not an *initial* 
>>> capacity.
>> 
>> I think that was a mistake in the docs. The comment in CFDictionary.h in the 
>> 10.7 SDK says:
>> 
>>       @param capacity A hint about the number of values that will be held
>>               by the CFDictionary. Pass 0 for no hint. The implementation may
>>               ignore this hint, or may use it to optimize various
>>               operations. A dictionary's actual capacity is only limited by 
>>               address space and available memory constraints). If this 
>>               parameter is negative, the behavior is undefined.
>> 
>> Since CFDictionary and NSDictionary have the same implementation under the 
>> hood, I think the capacity will have the same effect at runtime whichever 
>> API you use.
> 
> 
> IIRC, the semantic of the capacity parameter changed in 10.5. Before 10.5, it 
> specified the max capacity and trying to insert more elements was documented 
> as an undefined behavior.

Just for the record, my previous comment is about the CoreFoundation API only. 
The Foundation API has always defined the capacity parameter as a hint.

-- Jean-Daniel




_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to