我对Swift和iOS编程还很陌生,对类和对象只有一个粗略的了解。
以下是相关代码:
class Step {
var notation: String
init (notation: String) {
self.notation = notation
}
}
class AlgorithmMaker {
let F = Step(notation: "F")
let Fi = Step(notation: "F'")
let F2 = Step(notation: "F2")
var frontArray = [F, Fi, F2]
}
我正在尝试从AlgorithmMaker类内的“ Step”类创建对象数组。但是,Xcode一直给我错误:
'AlgorithmMaker.Type'没有名为'F'的成员
当您初始化类成员时,当前作用域就是类作用域,所以当您执行此操作时
var frontArray = [F, Fi, F2]
你实际上在做
var frontArray = [self.F, self.Fi, self.F2]
并且self
是这个范围内的类本身,即AlgorithmMaker
在这种情况下。
作为解决方案,您可以使用初始化程序并执行
class AlgorithmMaker {
let f = Step(notation: "F")
let fi = Step(notation: "F'")
let f2 = Step(notation: "F2")
var frontArray: [Step]
init() {
frontArray = [f, fi, f2]
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句