比较 tm 类型在C++

Comparing tm Type in C++

本文关键字:C++ 类型 tm 比较      更新时间:2023-10-16

我有一个vector<tm> times(x);对象,其中包含各种tm结构,每个结构都不同。 我想检查矢量中的每个项目并确定哪个时间最大/最低。

例如,在tm项中,时间如下:

01:00:00
00:01:00
00:00:01

第一个时间最大,最后一个最接近 00:00:00 的时间最小。 是否有任何特殊的方法来查找向量中最大/最小的结构,或者我需要设计一个长循环程序来从头开始分别比较每个 tm 结构的小时、分钟和秒?

标准模板库包含 std::min_elementstd::max_elementstd::minmax_element 。最后一个是用 c++11 引入的(请参阅 cpp首选项(,如果tm可比,应该对您有所帮助。

使用 mktime(tm( 并比较返回的值。 返回的值以纪元时间为单位,这意味着较大的值在时间上越新。