Creating and using plugins (C++) — ROS 2 Documentation: Humble documentation
接口编程的好处不言自明,有兴趣的朋友可以看看相关文章。此处在ROS2上进行接口编程,这是个技术难点,如果不能突破,那么许多方面将不能进行,比如:navigation中的costmap_2d包中已经提供了代价地图costmap_2d::Layer的基类。nav_core包中提供了nav_core::BaseGlobalPlanner、nav_core::BaseLocalPlanner、nav_core::RecoveryBehavior三个基类。分别用于全局路径规划、局部路径规划、复位行为加载。
参看:【BOOST C++】组件编程(1)--动态链接库_