using System.Collections;
using System.Collections.Generic;
using UnityEngine;
///
/// 分数的加减乘除运算符重载
///
public class Rfloat
{
private float fNumerator = 0f;
private float fDenominator = 0f;
public Rfloat(float numerator, float denominator)
{
fNumerator = numerator;
fDenominator = denominator;
}
public static Rfloat operator +(Rfloat a, Rfloat b)
{
var denominator = a.fDenominator * b.fDenominator;
var numerator = a.fNumerator * b.fDenominator + b.fNumerator * a.fDenominator;
return new Rfloat(numerator, denominator);
}
public static Rfloat operator -(Rfloat a, Rfloat b)
{
var denominator = a.fDenominator * b.fDenominator;
var numerator = a.fNumerator * b.fDenominator - b.fNumerator * a.fDenominator;
return new Rfloat(numerator, denominator);
}
public static Rfloat operator *(Rfloat a, Rfloat b)
{
var denominator = a.fDenominator * b.fDenominator;
var numerator = a.fNumerator * b.fNumerator;
return new Rfloat(numerator, denominator);
}
public static Rfloat operator /(Rfloat a, Rfloat b)
{
var denominator = a.fDenominator * b.fNumerator;
var numerator = a.fNumerator * b.fDenominator;
return new Rfloat(numerator, denominator);
}
public float GetFloat()
{
return fNumerator / fDenominator;
}
}
(C#)分数的重载运算
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 不支持上传文件,所以就复制过来了。作者信息什么的都没删。对前端基本属于一窍不通,所以没有任何修改,反正用着没问题就...