天天看点

ROS机器人程序设计(原书第2版)3.2.1 输出日志信息

<b>3.2.1 输出日志信息</b>

ros自带了大量的能够输出日志信息的函数和宏。它提供了如信息(或日志)级别、条件触发消息和stl的流接口等诸多方式。从简单的开始,用c++代码输出一个消息信息:

为了获取日志记录的函数和宏,这个头文件足够了:

这包括了以下头文件:

前面的消息处理程序运行的结果如下所示:

所有输出的信息都附带其级别和当前时间戳(因为这个原因你的输出可能有所不同),这两个值放在实际信息之前的方括号中。时间戳以公历时间计时,代表着自1970年1月1日以来的秒和纳秒计数。于是我们在新一行输出了信息。

此函数允许以和c语言中的printf函数相同的方式增加参数。例如,可以按照下面代码输出变量val对应的浮点数值:

此外,c++stl流被*_stream函数支持。因此,前面的指令相当于使用流:

请注意,我们没有指定任何流,因为api负责这些,通过重定向到cout/cerr、一个文件或两者。

继续阅读