How to serialize boost::rational

前端 未结 2 1332
别跟我提以往
别跟我提以往 2021-01-25 04:23

I cannot serialize boost::rational. I searched for a boost/serialize/rational.h header but it does not exist.

 /usr/include/boost/seriali         


        
2条回答
  •  情深已故
    2021-01-25 04:57

    Use the provided input/output functions: https://www.boost.org/doc/libs/1_64_0/libs/rational/rational.html#Input%20and%20Output

    Serialize to a std::string:

    template 
    std::string serialize(boost::rational& rational) const {
      std::stringstream rational_ss;
    
      rational_ss << rational;
      return rational_ss.str();
    }
    

    This serializes the rational to a string that looks like "3/5" e.g.

    To deserialize, use boost::rational's >>.

提交回复
热议问题