Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 如何使用实例变量访问另一个变量中的对象并返回_Arrays_Swift - Fatal编程技术网

Arrays 如何使用实例变量访问另一个变量中的对象并返回

Arrays 如何使用实例变量访问另一个变量中的对象并返回,arrays,swift,Arrays,Swift,如何使用实例变量访问另一个变量中的对象并返回 class Tyre { let name: String var owner: Vehicle? init(name: String){ self.name = name } } class Vehicle { var name: String var tyres: [Tyre] = [] var stringIds = ""; var tyreNames : ()

如何使用实例变量访问另一个变量中的对象并返回

class Tyre {
    let name: String
    var owner: Vehicle?
    init(name: String){
        self.name = name
    }
}

class Vehicle {
    var name: String
    var tyres: [Tyre] = []

    var stringIds = "";
    var tyreNames : () -> String = {
        //        let allTyres = (tyres.map{String($0)}).joined(separator: ",")
        print(tyres) // unable to acess tyres here
        return ""
   }

    init(name: String){
        self.name = name
    }

    func adopt(tyre: Tyre){
        tyres.append(tyre)
        tyre.owner = self
    }
}

var myCar = Vehicle(name: "Honda")
var tyre = Tyre(name: "MRF")
myCar.adopt(tyre: tyre)
tyre = Tyre(name: "CFP")
myCar.adopt(tyre: tyre)
print(myCar.tyreNames())
无法访问车辆类别中的轮胎以打印车辆类别中具有以下特征的所有轮胎:

错误:实例成员“轮胎”不能用于类型“车辆”


而不是作为闭包声明
tyreNames
作为计算变量

var tyreNames : String {
    return tyres.map{ $0.name }.joined(separator: ", ")
}
叫它

print(myCar.tyreNames)