在 boost::rational 课程中,如果我这样做了
boost::rational<int> r(2,2);
std::cout << r << std::endl;
结果将是1/1
。有没有办法保持这一点,2/2
而不必围绕理性类编写包装器?理想情况下,我希望这也适用于加法,这样类似
boost::rational<int> r(2,2);
boost::rational<int> s(2,2);
std::cout << r + s << std::endl;
会产生4/2
而不是2/1
任何帮助,将不胜感激!