|
Boost : |
From: Pavol Droba (droba_at_[hidden])
Date: 2007-05-16 08:03:28
JD wrote:
>> Function signature looks fine now, but if you want to be
>> range-compliant, there are few issues in your implementation.
>>
>> 1.
>> instead of
>> std::size_t Arg1Size = Arg1End - Arg1It;
>> use
>> boost::range_size<Arg1>::type Arg1Size = size(Arg1);
>>
>
> Done.
>
>> 2.
>> I don't like the usage of plane C-Arrays. Even if you wanna use them,
>> you should wrap the pointers to something like boost::scoped_array.
>> Currently your code does not provide even the basic exeption quarantie
>> (you will unconditionaly leak memory if an exception is thrown) and
>> that's bad for this kind of algorithm.
>>
>
> Ok, I just move to std::vector.
> New version uploaded: http://minilien.com/?rrDciLH4g9
>
As far as I can tell, the code seems fine.
Now the question is if we need any kind of review to add this to the
boost. Unfortunately, I'm not the one that can give an aswer to this.
Also I would consider the suggestions that were proposed by Phil
Endecott. Big-O complexity difference seems quite significant.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk