2

http://robot.kaist.ac.kr/haptics/chai3d-2.0.0_Doc/resources/html/structc_matrix3d.html

cMatrix3d 有一个类数据成员double m [3][3];

如果我错了,现在纠正我:要序列化这个类的一个实例,我只需要添加这个

private:
    friend class boost::serialization::access;

    template<class Archive>
    void serialize(Archive & ar, const unsigned int version)
    {
        ar & m;//I think this is probably wrong, see error
    }

到类定义,对吧?

我收到此运行时错误:client.exe 中 0x758c9617 处的未处理异常:Microsoft C++ 异常:内存位置 0x02209110 处的 boost::archive::archive_exception

当我尝试从存档反序列化到对象实例时,在客户端。

std::istringstream iss(recvd_msg);
boost::archive::text_iarchive ia(iss); 
            cMatrix3d rot;
            ia>>rot;
4

1 回答 1

0

尝试

private:
    friend class boost::serialization::access;

    template<class Archive>
    void serialize(Archive & ar, const unsigned int version)
    {
        for (int i = 0; i != 3; ++i)
        {
            ar & m[i];
        }
    }
于 2013-09-18T05:50:08.230 回答