我想将分子的分子和分母存储为两个无符号整数,并将代表分子的单独布尔变量与存储在计算机内存中的分子和分母存储为有符号整数进行比较。以两个分数的加法,减法,除法和乘法为基本示例。您认为哪种存储方式更可取?最好添加一个代表分数符号的布尔变量?
答案 0 :(得分:1)
boost::rational
是如何实现此目标的一个很好的例子。如果您将其模板化为无符号整数类型,则它将为负数下溢。
如Boost文档中所述:
“当使用有限精度的整数类型时,有理类会遇到许多精度问题,这些问题会导致浮点类型的困难。”