
25 Jul
2014
25 Jul
'14
11:38 a.m.
Hi, I have encountered something I consider a bug in boost::rational's interface. Its documentation discusses in detail why conversion from double is not supported, but the following code works fine: #include <iostream> #include <boost/rational.hpp> int main() { double d = 31.82; boost::rational<int> r = d; std::cout << r << std::endl; } With the following result: 31/1 It just discards the fractional part. Such conversion is really confusing an I claim should be explicitly deleted. Regards, &rzej