我试图在运行时使用代码生成和销毁节点。我知道 ROS groovy 有rosspawn
,但我正在做的项目是有限的。这是我用于节点类的代码
class node {
private:
ros::NodeHandle *n;
public:
void init(int argc, char **argv, std::string s) {
ros::init(argc, argv, s);
n = new NodeHandle();
}
void shutdown() {
n->~NodeHandle();
}
};
我已经使用它进行了测试rosnode list
,它似乎可以工作。我的问题是,这是糟糕的编程还是会发生不可预见的错误?我看到发布的问题说需要系统调用才能在执行期间生成节点。