Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <utility>
- // basic min and max implementations
- template <typename T> constexpr T Min(const T& x, const T& y) {return (x < y) ? x : y;}
- template <typename T> constexpr T Max(const T& x, const T& y) {return (x > y) ? x : y;}
- // extended versions with variadic templates
- template <typename T, typename... A> constexpr T Min(const T& x, const T& y, A&&... vArgs)
- {return Min(x, Min(y, std::forward<A>(vArgs)...));}
- template <typename T, typename... A> constexpr T Max(const T& x, const T& y, A&&... vArgs)
- {return Max(x, Max(y, std::forward<A>(vArgs)...));}
- Min(a, b, 10.0f, c, Max(d, e));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement