目录 框架时序图类图 ros中提供了动态加载class的方式。这样可以做到应用代码和class所在的so解耦合。一般情况下,使用dlopen动态加载C风格函数,C++风格的类无法直接使用dlopen加载,通过ros中的这种方式,可以做到动态加载。 其思想核心仍然是通过dlopen加载so,然后通过静态对象的构造将外部类进行初始化,这一步中,将需要动态加载的class类作为模板参数加载到进程地址空间中,然后,通过wrapper类将外部可以调用的回调函数绑定到class的成员函数中,即可实现动态加载。具体流程图如下: 框架 时序图 类图