在 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
任何帮助,将不胜感激!