解決のために編集されました。
これは些細な作業のはずですが、時間がかかりすぎて、自分の正気を疑い始めています。
std::string
時間、分、秒、ミリ秒の4 つの s があります。ptime
私はそれらから抜け出したいです。最初は、文字列を数値に変換し (? を使用)、ダミーの日付 (気にしないため)、または今日の日付と一緒にコンストラクターにlexical_cast
プラグインすることを考えました。ptime(date,time_duration)
次に、単一の文字列を作成してそれを ptime に変換するだけで、より効率的で作業が少なくなる可能性があると考えました...しかし、リンクエラーに遭遇しただけでなく、gregorian::date
.
この時点で、私はこれを考えすぎているのではないかと判断しました。しばらくすると、これら 2 つの方法のいずれかが機能するようになる可能性がありますが、もっと簡単な方法をハッキングしているように感じます。私ですか?
編集
これが私がやったことです。私が望んでいたほどエレガントではありませんが、動作することに満足できます。今のところ。
using namespace boost::posix_time;
using namespace boost::gregorian;
std::string date_str = to_iso_extended_string( day_clock::local_day() ); // YYYY-MM-DD
std::string time_str( " " + hours + ":" + minutes + ":" + seconds + "." + milliseconds); // HH:MM:SS:MMM
return time_from_string( date_str + time_str );