我想知道我是否可以做标题所暗示的内容。 这是一些代码。
struct Crop {
var name = String()
var season = String()
var reharvistable = Bool()
//struct Stages:
struct Stage1{
var minDay = Int()
var maxDay = Int()
var minWater = Int()
var maxWater = Int()
}/*
struct Stage2{
var minDay = Int()
var maxDay = Int()
var minWater = Int()
var maxWater = Int()
} */
}
var Crops = [Crop]()
var temp = Crop(name: "Turnip", season: "Spring", reharvistable: false)
Crops.append(Crop(Name: "Turnip", Season: "Spring", Reharvistable:
false, Stage1(minDay: 2, maxDay: 3, minWater: 2, maxWater: 7)))
第二阶段已被注释掉,但我希望将来能够进入第六阶段。
“temp”有效但我尝试将它们添加到数组中却没有。我的最终目标是将这些“裁剪”存储在一个数组中,“裁剪”,所以我希望能够动态添加更多“裁剪”。 此外,括号是在每种数据类型之后,因为它们在没有它们的情况下给我一个错误。
答案 0 :(得分:2)
如何在crop结构中定义阶段结构,而不是单独定义它们并在crop中包含stage数组。像这样:
struct Crop {
var name = String()
var season = String()
var reharvistable = Bool()
var stages = [Stage]()
}
struct Stage {
var minDay = Int()
var maxDay = Int()
var minWater = Int()
var maxWater = Int()
}
然后你可以定义这样的裁剪:
Crops.append(Crop(name: "Turnip", season:" spring", reharvistable: false, stages: [
Stage(minDay: 2, maxDay: 3, minWater: 2, maxWater: 7),
...
])
通过这种方式,您可以拥有与您一样多的舞台,并随意添加或删除它们。