2 つの ISO 6801 タイム スタンプを比較して最新のタイム スタンプを返す関数を修正したいと考えています。関数を簡単に作成する方法がわかりません
たとえばstring s1 = 2012-10-10 09:42:00;
、string s2 = 2012-10-10 09:52:00;
compare_timestamp(s1,s2) は s2 を返します
より新しいものを見つける必要がある場合は、文字列比較で十分です。
string &compare_timestamp(string &s1, string &s2) {
return s1.compare(s2) > 0 ? s1 : s2;
}
std::string & compare_timestamp(std::string & lhs, std::string & rhs) {
return std::max(lhs, rhs);
}
std::string const & compare_timestamp(std::string const & lhs, std::string const & rhs) {
return std::max(lhs, rhs);
}
現在、より良い解決策は、直接TimeStamp
作業するよりもクラスを作成することです。std::string
はTimeStamp
内部的に a std::string
and オーバーロードoperator<
を保持して を延期することができますが、強力な型std::string::operator<
を使用することになります