我有一个vector<tm> times(x);
对象的各种tm结构,每个结构都不同于另一个结构。我想检查向量中的每个项目,并确定哪个时间是最大/最低。
例如,tm项目中的时间如下:
01:00:00
00:01:00
00:00:01
第一个是最大的时间,而最接近00:00:00的最后一个是最小的。有没有什么特别的方法可以在向量中找到最大/最小的结构,或者我是否需要设计一个长循环程序来分别从头开始比较每个tm结构的小时,分钟和秒?
答案 0 :(得分:1)
标准模板库包含std::min_element
,std::max_element
和std::minmax_element
。最后一个是用c ++ 11引入的(见cppreference),如果tm
具有可比性,可以帮助你。
答案 1 :(得分:0)
使用mktime(tm)并比较返回的值。返回值在纪元时间内,这意味着更大的值在时间上更新。