c - Swift 中的 C 结构体
问题描述
我正在尝试在 Swift 项目中使用amazon-kinesis-video-streams-webrtc-sdk-c但是我不确定如何创建SignalingClientInfo struct。具体来说,我不确定如何正确构建clientId
:
var signalingClientInfo = SignalingClientInfo(
version: UINT32(SIGNALING_CLIENT_INFO_CURRENT_VERSION),
clientId: clientId,
loggingLevel: UINT32(1)
)
解决方案
有点烦人,但在 CclientId
中固定大小的数组作为元组导入到 Swift 中。
关于向 Swift 添加适当的固定大小数组的讨论正在进行中,但与此同时,您可以使用与实现相关的技巧从数组构造大型元组。
见https://oleb.net/blog/2017/12/swift-imports-fixed-size-c-arrays-as-tuples/
编辑:看起来同质元组的布局是有保证的。所以这是安全的,只是烦人。
推荐阅读
- java - 我如何在junit中测试实例?
- java - 将列表转换为子类
- matlab - matlab 中的 interp1(x,y,xq) 当 x,xq: 数值数组, y: 字符串数组
- javascript - React中componentWillMount中的常量声明?
- vba - Chart.SetSourceData 方法失败
- sql - 窗口函数:在 ORDER BY 之后的一列 PARTITION BY
- django - 通过 Django 表单显示文本字段和收音机
- php - Opencart 3 - 显示一个如果产品链接到某个类别,则部分
- php - 关系3表(laravel 5.7)
- php - Laravel 保存多部分表单