Merged with changes of MS, some similar bug fixes done in parallel

This commit is contained in:
Klaus Basan
2013-04-30 02:34:15 +02:00
22 changed files with 126 additions and 228 deletions

View File

@@ -193,7 +193,7 @@ template <class MU, class PQ> CPhysicalQuantity<MU, PQ> &CPhysicalQuantity<MU, P
*/
template <class MU, class PQ> PQ CPhysicalQuantity<MU, PQ>::operator -(const PQ &otherQuantity) const
{
PQ minus = this->clone();
PQ minus = *derived();
minus -= otherQuantity;
return minus;
}
@@ -212,7 +212,7 @@ template <class MU, class PQ> CPhysicalQuantity<MU, PQ> &CPhysicalQuantity<MU, P
*/
template <class MU, class PQ> PQ CPhysicalQuantity<MU, PQ>::operator *(double multiply) const
{
PQ times = this->clone();
PQ times = *derived();
times *= multiply;
return times;
}
@@ -231,7 +231,7 @@ template <class MU, class PQ> CPhysicalQuantity<MU, PQ> &CPhysicalQuantity<MU, P
*/
template <class MU, class PQ> PQ CPhysicalQuantity<MU, PQ>::operator /(double divide) const
{
PQ div = this->clone();
PQ div = *derived();
div /= divide;
return div;
}
@@ -286,7 +286,7 @@ template <class MU, class PQ> PQ &CPhysicalQuantity<MU, PQ>::switchUnit(const MU
this->m_unit = newUnit;
this->setUnitValue(cf);
}
return static_cast<PQ &>(*this);
return *derived();
}
/*