随笔

class Rational
{
public:
    Rational(int numerator = 0, int denominator = 1);
    int numerator() const;
    int denominator() const;
    
private:
};

const Rational operator*(const Rational& lhs, const Rational& rhs)
{
    return Rational(lhs.numerator() * rhs.numerator(), lhs.denominator() * rhs.denominator());
}
int main()
{
    Rational oneEighth(1, 8);
    Rational oneHalf(1, 2);
    Rational result = oneHalf * oneEighth;
    result = result * oneEighth;
    result = oneHalf * 2;//让两个参数都通过隐式转换
    result = 2 * oneHalf;
    return 0;
}
原文地址:https://www.cnblogs.com/zzyoucan/p/6592472.html