random numbers in bulk
Paolo Carlini
paolo.carlini@oracle.com
Sun Aug 26 17:35:00 GMT 2012
Hi,
On 08/26/2012 07:19 PM, Ulrich Drepper wrote:
> On Sun, Aug 26, 2012 at 10:27 AM, Paolo Carlini
> <paolo.carlini@oracle.com> wrote:
>> Thus, all in all, for the time being I would go with __generate.
> OK, here's a version of the patch with the patch for 54376 already assumed.
>
> I changed to function name to __generate. I feel much more
> comfortable with using the leading underscores.
>
> I changed _OutputIterator to _ForwardIterator.
If you have things like:
+ template<typename _UniformRandomNumberGenerator,
+ typename _ForwardIterator>
+ void
+ __generate(_ForwardIterator __f, _ForwardIterator __t,
+ _UniformRandomNumberGenerator& __urng)
then probably you want to swap the template parameters (or viceversa):
+ template<typename _ForwardIterator,
+ typename _UniformRandomNumberGenerator>
+ void
+ __generate(_ForwardIterator __f, _ForwardIterator __t,
+ _UniformRandomNumberGenerator& __urng)
Frankly, I'm finding the forwarding via __gnu_cxx::__normal_iterator
pretty ugly. Can't we have instead an internal, private,
__generate_impl(_ForwardIterator, _ForwardIterator,
_UniformRandomNumberGenerator&, const param_type&) which is called by
both the variant of __generate taking iterators and the variant taking
pointers?
Paolo.
More information about the Libstdc++
mailing list