ros2 消息是自描述的吗?

Are ros2 messages self describing?

在c++和ros2中,是否可以在不知道主题类型的情况下订阅主题?如果是这样,并且收到一条消息,是否有可能在不知道其类型的情况下再次检查该消息?意思是,ros2 消息是自描述的(例如 FlexBuffer 消息)吗?

不,ros2 消息不是自描述的,因为它们被二进制化以提高吞吐量。因此,您不仅需要.msg/.idl 描述文件,还需要将其编译成消息描述,然后才能解释消息。

ros2 interfaces的概念在这里描述:https://docs.ros.org/en/foxy/Concepts/About-ROS-Interfaces.html