C++
函数参数
.hal
文件中列出的参数会映射到 C++ 数据类型。未映射到基元 C++ 类型的参数会通过常量引用进行传递。
对于具有返回值(具有 generates
语句)的每个 HIDL 函数,该函数的 C++ 参数列表中都有一个附加参数:使用 HIDL 函数的返回值调用的回调函数。有一种情况例外:如果 generates
子句包含直接映射到 C++ 基元的单个参数,则使用回调省略(回调会被移除,而返回值则会通过正常的 return
语句从函数返回)。
函数返回值
传输错误和返回类型
generates
语句可以产生三种类型的函数签名:
- 如果只有一个作为 C++ 基元的返回值,
generates
返回值会由Return<T>
对象中函数的值返回。 - 如果情况更复杂,
generates
返回值则会通过随函数调用本身一起提供的回调参数返回,而函数则返回Return<void>