最小値と最大値を求める
たぶん探せばboostあたりにありそうだが、面倒なので作ってみた。
template<typename T> class MinMax { public: MinMax() : min(std::numeric_limits<T>::max()), max(std::numeric_limits<T>::min()) {} MinMax& operator()(T data){ if (data < min) min = data; else if (data > max) max = data; return *this; } T min, max; }; void test() { MinMax<int> minmax; minmax(10)(20)(30)(40)(50); std:cout << "min:" << minmax.min << " max:" << minmax.max << std::endl; }