繁体   English   中英

如何在Swift中初始化包含枚举数组的结构体数组?

[英]How can I initialize an array of structs containing enum arrays in Swift?

我试图将Pascal程序转换为包含嵌套数据结构的Swift程序。 我无法初始化数组,请提出建议,我应该如何编写此示例。

enum  KW: Int {case XXXX=0,YYYY,ZZZZ}
let numCards = 49
typealias Card = [KW]

struct KSet {
    var k1: Card
    var k2: Card
}

var cards: [KSet] = []

func rotate(k:Card) -> Card {
    return([k[2],k[0],k[3],k[1]])
}

func initOne(k: Card) {

     cards.append(k1:k,k2:rotate(k))   // <– does not compile
}

initOne([.XXXX, .YYYY, .ZZZZ, .XXXX])

修改

cards.append(k1:k,k2:rotate(k))

读书

cards.append(KSet(k1:k,k2:rotate(k)))

您应该这样插入标签k

cards.append(KSet(k1:k,k2:rotate(k: k)))

initOne(k: [.XXXX, .YYYY, .ZZZZ, .XXXX])

或者,如果您想省略它,

func rotate(_ k:Card) -> Card

func initOne(_ k: Card)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM