[Development] Question about QCoreApplicationData::*_libpaths
Andre Somers
andre at familiesomers.nl
Sat Jan 23 17:46:39 CET 2016
On 22-1-2016 22:51, Kevin Kofler wrote:
> I'd already be happy with those that were (are, actually) already
> there. I'd rather have 10-20 common algorithms with a convenient API
> than 80+ obscure ones that force me to use iterators (especially the
> boilerplate .begin() and .end() iterators that will be used in 99+% of
> the cases – copy&paste programming sucks).
Please note that the algorithms in STD are by no means complete. You are
stimulated to add your own that you find useful, either as
specializations or combinations of what is already there, as
implementations of known algorithms in literature or even completely new
ones ("Publish! Become Famous! (Don't patent please.)" - Sean Parent).
Stephanov has seen his original design of STL been significantly
shortened to get it through the commission; the proposal included much
more than what is in STD even now after the more recent additions.
So, by all means, add what you deem useful.
I certainly agree that having to write begin/end pairs for all
algorithms is not nice. It is the most general way to specify them
however, so I understand why they are like this. And it even makes sense
for some of them (like find, where you can then call find again using
the return value of the last call to get the next match). Even for sort
there certainly are use cases for a pair of iterators instead of passing
the whole container. Still, it would make perfect sense to create
versions that take a whole container. I don't even think that that is
hard to do...
template < class Container, class Compare >
void sort ( Container container, Compare compare)
{
sort(begin(container), end(container), compare);
};
Something like that perhaps? Feel free to add as many as you think are
useful.
André
More information about the Development
mailing list