
On 10/25/2010 11:26 AM, Michael Fawcett wrote:
On Mon, Oct 25, 2010 at 11:08 AM, Hossein Haeri
wrote: Dear all,
Is there any variadic max function in Boost? I mean something which returns the max of all the arguments it takes -- no matter how many they are. (Feel free to correct me if this use of 'variadic' is not the correct terminology.) Please note that I'm not after working on ranges of arguments. I'm rather looking for a max function which is applicable in all the examples below:
int m1 = max(a1, a2); int m2 = max(a1, a2, a3); ... int mk = max(a1, a2, ..., ak);
I privately emailed Hervé Brönnimann with a variadic implementation of min/max for inclusion into the minmax library in 2007. It was implemented both as brute force overloads using Boost.PP (up to 10 arguments) and using variadic templates.
With my variadic macro data library in the sandbox you could probably do it fairly easily for compilers which support variadic macros.