【发布时间】:2016-10-17 11:01:45
【问题描述】:
我正在使用Howard Hinnant's date library,并试图找出两个日期之间的总月数。
invalid static_cast from type ‘std::chrono::duration<int, std::ratio<2629746l, 1l> >’ to type ‘int’ int period = static_cast<int>(period_in_months(start_date, end_date));
以下是我正在使用的功能:
auto period_in_months(year_month_day start_date, year_month_day end_time) {
auto total_months = ((end_time.year() - start_date.year())*12 + (end_time.month() - start_date.month()));
return (total_months--);
}
double percentage_return(string risk_profile, year_month_day start_date, year_month_day end_date) {
int period = static_cast<int>(period_in_months(start_date, end_date));
// do something
}
我尝试使用chrono::duration_cast<int>(period_in_months(start_date, end_date),但收到了同样的错误。
【问题讨论】:
标签: c++ date c++11 chrono static-cast