AI智能推荐题库-试题通 AI智能整理导入题库-试题通
×
首页 题库中心 新能源汽车大赛题库 题目详情
CAE5C6F9815000016270133018EB1E98
新能源汽车大赛题库
1,000
单选题

18、在ROS机器人操作系统中,下列哪些是CMake没有而Catkin有【Catkin扩展了】的指令()。

A
addⱣⱤmessageⱣⱤfiles()
B
generateⱣⱤmessages()
C
addⱣⱤactionⱣⱤfiles()
D
以上均是

答案解析

正确答案:D

解析:

这道题考查的是 ROS(Robot Operating System)构建系统中 **Catkin** 相对于标准 **CMake** 的扩展功能。 ### 解析过程: 1. **背景知识**: * **CMake** 是一个跨平台的自动化建构系统,它使用 `CMakeLists.txt文件来描述构建过程。标准的 CMake 提供了如 `add_executable`、`add_library`、`target_link_libraries`等通用指令。 * **Catkin** 是 ROS 推荐的构建系统,它是基于 CMake 的宏和脚本集合。Catkin 旨在简化 ROS 包(Package)的构建,特别是处理 ROS 特有的消息(`.msg`)、服务(`.srv`)和行动(`.action`)文件的编译和代码生成。 2. **选项分析**: * **A. `add_message_files()`**: 这是 Catkin 提供的宏指令。它的作用是将 `.msg` 文件注册到构建系统中,以便后续生成对应编程语言(如 C++、Python)的消息头文件或模块。标准 CMake 没有这个指令,因为它不懂 ROS 的消息格式。 * **B. `generate_messages()`**: 这也是 Catkin 提供的宏指令。它触发实际的消息代码生成过程,依赖于之前通过 `add_message_files()` 和 `add_service_files()` 注册的文件。标准 CMake 不具备此功能。 * **C. `add_action_files()`**: 同样属于 Catkin 的扩展指令。用于注册 `.action` 文件,以便生成行动相关的代码。标准 CMake 无法直接处理 ROS 的行动定义文件。 3. **结论**: 选项 A、B、C 中的指令都是 Catkin 为了支持 ROS 特有的通信机制(消息、服务、行动)而专门扩展出来的 CMake 宏。它们都不是原生 CMake 的一部分。因此,这三个选项都符合“CMake 没有而 Catkin 有”的描述。 ### 最终答案: **D. 以上均是**
题目纠错
新能源汽车大赛题库

扫码进入小程序
随时随地练习

关闭登录弹窗
专为自学备考人员打造
勾选图标
自助导入本地题库
勾选图标
多种刷题考试模式
勾选图标
本地离线答题搜题
勾选图标
扫码考试方便快捷
勾选图标
海量试题每日更新
波浪装饰图
欢迎登录试题通
可以使用以下方式扫码登陆
APP图标
使用APP登录
微信图标
使用微信登录
试题通小程序二维码
联系电话:
400-660-3606
试题通企业微信二维码