Improve Period class
This commit is contained in:
parent
6088f6bb43
commit
e79563569a
|
@ -30,10 +30,8 @@ namespace ChronoUtilities {
|
||||||
*
|
*
|
||||||
* The resulting Period will contain the number of years, month and days which have been passed
|
* The resulting Period will contain the number of years, month and days which have been passed
|
||||||
* between \a begin and \a end.
|
* between \a begin and \a end.
|
||||||
*
|
|
||||||
* \todo Pass DateTime objects by value in v5.
|
|
||||||
*/
|
*/
|
||||||
Period::Period(const DateTime &begin, const DateTime &end)
|
Period::Period(DateTime begin, DateTime end)
|
||||||
{
|
{
|
||||||
m_years = end.year() - begin.year();
|
m_years = end.year() - begin.year();
|
||||||
m_months = end.month() - begin.month();
|
m_months = end.month() - begin.month();
|
||||||
|
|
|
@ -7,10 +7,11 @@ namespace ChronoUtilities {
|
||||||
|
|
||||||
class CPP_UTILITIES_EXPORT Period {
|
class CPP_UTILITIES_EXPORT Period {
|
||||||
public:
|
public:
|
||||||
Period(const DateTime &begin, const DateTime &end);
|
constexpr Period();
|
||||||
int years() const;
|
Period(DateTime begin, DateTime end);
|
||||||
int months() const;
|
constexpr int years() const;
|
||||||
int days() const;
|
constexpr int months() const;
|
||||||
|
constexpr int days() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int m_years;
|
int m_years;
|
||||||
|
@ -18,10 +19,17 @@ private:
|
||||||
int m_days;
|
int m_days;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
constexpr Period::Period()
|
||||||
|
: m_years(0)
|
||||||
|
, m_months(0)
|
||||||
|
, m_days(0)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Returns the years component of the period represented by the current instance.
|
* \brief Returns the years component of the period represented by the current instance.
|
||||||
*/
|
*/
|
||||||
inline int Period::years() const
|
constexpr int Period::years() const
|
||||||
{
|
{
|
||||||
return m_years;
|
return m_years;
|
||||||
}
|
}
|
||||||
|
@ -29,7 +37,7 @@ inline int Period::years() const
|
||||||
/*!
|
/*!
|
||||||
* \brief Returns the months component of the period represented by the current instance.
|
* \brief Returns the months component of the period represented by the current instance.
|
||||||
*/
|
*/
|
||||||
inline int Period::months() const
|
constexpr int Period::months() const
|
||||||
{
|
{
|
||||||
return m_months;
|
return m_months;
|
||||||
}
|
}
|
||||||
|
@ -37,7 +45,7 @@ inline int Period::months() const
|
||||||
/*!
|
/*!
|
||||||
* \brief Returns the days component of the period represented by the current instance.
|
* \brief Returns the days component of the period represented by the current instance.
|
||||||
*/
|
*/
|
||||||
inline int Period::days() const
|
constexpr int Period::days() const
|
||||||
{
|
{
|
||||||
return m_days;
|
return m_days;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue