使用C ++将复杂结构保存到文件中

时间:2015-10-28 11:05:18

标签: c++ memory save ros

虽然我使用ROS,但我认为这更像是一个C ++问题。 我正在创建一个复杂类(moveit::planning_interface::MoveGroup::Plan)的元素,我想将它保存到文件中,以便我可以加载它并在其他运行中使用它。因为它的内容不仅仅是ints / floats / strings / etc.我不能使用PicklingTools。我见过Boost::serialization,但由于我没有定义这个结构,我认为我不能用它。

有没有办法做到这一点?

moveit::planning_interface::MoveGroup::Plan有以下成员:

double planning_time_
moveit_msgs::RobotState start_state_
moveit_msgs::RobotTrajectory trajectory_

定义链接:

我试着写一下:

template<class Archive>  
void serialize(Archive & ar, moveit::planning_interface::MoveGroup::Plan & g, const unsigned int version){
    ar & g.planning_time_;
    ar & g.start_state_;
    ar & g.trajectory_;
}
} // namespace serialization
} // namespace boost

它编译但是没有用。此外,我不知道如何实际保存它以便以后使用它。从现在起它会保存此类的所有实例吗?

0 个答案:

没有答案