单选题
18、在ROS机器人操作系统中,下列哪些是CMake没有而Catkin有【Catkin扩展了】的指令()。
A
addⱣⱤmessageⱣⱤfiles()
B
generateⱣⱤmessages()
C
addⱣⱤactionⱣⱤfiles()
D
以上均是
答案解析
正确答案:D
解析:
这道题目考察的是ROS(Robot Operating System)中CMake与Catkin特性的区别。
解析如下:
add_message_files() 是用来指定消息类型的源文件,这些文件会被编译成可以在ROS节点间通信使用的消息类型。
generate_messages() 是一个辅助函数,用于处理由add_message_files()等命令添加的消息文件,并生成相应的头文件和其他必要的文件。
add_action_files() 类似于add_message_files(),但是它用于Action消息文件,Action是一种更复杂的交互模式,包括目标、反馈和结果等。
CMake本身是一个跨平台的自动化构建系统,主要用于管理软件的构建过程,但它并不直接支持上述这些ROS特有的功能。Catkin是一个为ROS设计的工具集,它在CMake的基础上进行了扩展,以支持ROS节点的开发和构建,因此它包含了上述这些指令。
答案D(以上均是)是正确的,因为这些指令都是Catkin为支持ROS特性而对CMake进行的扩展,并不是标准CMake的一部分。
解析如下:
add_message_files() 是用来指定消息类型的源文件,这些文件会被编译成可以在ROS节点间通信使用的消息类型。
generate_messages() 是一个辅助函数,用于处理由add_message_files()等命令添加的消息文件,并生成相应的头文件和其他必要的文件。
add_action_files() 类似于add_message_files(),但是它用于Action消息文件,Action是一种更复杂的交互模式,包括目标、反馈和结果等。
CMake本身是一个跨平台的自动化构建系统,主要用于管理软件的构建过程,但它并不直接支持上述这些ROS特有的功能。Catkin是一个为ROS设计的工具集,它在CMake的基础上进行了扩展,以支持ROS节点的开发和构建,因此它包含了上述这些指令。
答案D(以上均是)是正确的,因为这些指令都是Catkin为支持ROS特性而对CMake进行的扩展,并不是标准CMake的一部分。
