두 값의 최대값과 최소값, 교환을 처리하는 함수는 <algorithm>에 다음과 같이 정의되어 있다.
namespace std{
template<class T>
inline const T& min(const T& a, const T& b){
return b < a ? b : a;
}
template<class T>
inline const T& max(const T& a,const T&b){
return a < b ? b : a;
}
template<class T>
inline void swap(T& a,T&b){
T tmp(a);
a = b;
b = tmp;
}
}
namespace std{
template<class T>
inline const T& min(const T& a, const T& b){
return b < a ? b : a;
}
template<class T>
inline const T& max(const T& a,const T&b){
return a < b ? b : a;
}
template<class T>
inline void swap(T& a,T&b){
T tmp(a);
a = b;
b = tmp;
}
}