日志和异常

log

ROS为开发者和用户提供了一套日志记录和输出系统。这套系统的实现方式是基于topic,也就是每个节点都会把一些日志信息发到一个统一的topic上去,这个topic就是/rosout。 rosout本身也是一个node,它专门负责进行日志的记录。我们在启动master的时候,系统就会附带启动rosout。

在roscpp中进行日志的输出,需要先引用include <ros/console.h>,这个头文件包括了五个级别的日志输出接口,分别是:

  • DEBUG
  • INFO
  • WARN
  • ERROR
  • FATAL

用法非常简单:

ROS_DEBUG("The velocity is %f", vel);
ROS_WARN("Warn: the use is deprecated.");
ROS_FATAL("Cannot start this node.");
...

当然也可以在一些特定场景,特定条件下输出,不过对于普通开发者来说可能用不到这么复杂的功能。
具体可参考:http://wiki.ros.org/roscpp/Overview/Logging

Exception

roscpp中有两种异常类型,当有以下两种错误时,就会抛出异常:

  1. ros::InvalidNodeNameException
    当无效的节点名称传给ros::init(),通常是名称中有/,就会触发

  2. ros::InvalidNameExcaption
    当无效名称传给了roscpp

results matching ""

    No results matching ""

    results matching ""

      No results matching ""