如何定义一个数组以接受结构中的有序对?
Posted
技术标签:
【中文标题】如何定义一个数组以接受结构中的有序对?【英文标题】:How can I define an array to accept ordered pairs in a struct? 【发布时间】:2018-08-25 18:57:48 【问题描述】:导入基础
结构轨迹 变量 x: 整数 var y: 整数
让机场:[轨迹] = [(1,1), (2,2)]
产生错误“无法将类型 '(Int, Int)' 的值转换为预期的元素类型 'locus'” 我喜欢编译器接受 'locus' 作为类型 - 我讨厌它不接受 Ints I尝试输入。帮助表示赞赏。
【问题讨论】:
【参考方案1】:您的文字[(1,1), (2,2)]
是一个元组数组。试试:
let aerodrome = [(1,1), (2,2)]
在操场上并选项单击aerodrome
,您将获得:
let aerodrome: [(Int, Int)]
如果你想要一个locus
的数组,你需要创建它们的实例。一种方法是使用需要命名参数的自动默认构造函数:
let aerodrome = [locus(x: 1,y: 1), locus(x: 2,y: 2)]
如果您不想使用标签,请写自己的init
。
【讨论】:
以上是关于如何定义一个数组以接受结构中的有序对?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 SwiftUI 中定义结构属性以接受线性或角度渐变?