boost::rational

double型ではなくて、分数の分母、分子の両方を保持しておきたい場面がいくつかある。
誤り訂正符号の符号化率なんかがそう。


boost::rationalというテンプレートクラスが便利そうで使い始めた。
ヘッダファイルをインクルードするだけで使える。

#include <boost/rational.hpp>


ここのサイトに使い方載ってる。
letsboost::rational
numerator()denominator()が分子、分母のゲッタメソッド。
boost::rational_cast<double>(a)とかでdoubleにキャストできる。


今まで書いたコードで置き替えられるとこはこれ使おうと思う。