tôi nhận được lỗi "Type 'tàu' không có thành viên subscript khi tôi cố gắng để làm:Loại Không có thành viên đăng ký?
var coor = ship[index]
tôi đã cố gắng để làm
var coor = ship?[index] as? Coordinate
Nhưng tôi nhận được lỗi này:" Không thể sử dụng chain tùy chọn trên giá trị không bắt buộc của loại 'tàu'"
Dưới đây là Ship
lớp học của tôi:
import Foundation
class Ship: NSObject, NSCoding {
var shipCoors: [Coordinate]?
var count: Int {
var count = 0
for _ in shipCoors! {
count++
}
return count
}
init(shipCoors: [Coordinate]) {
self.shipCoors = shipCoors
}
required init(coder decoder: NSCoder) {
self.shipCoors = decoder.decodeObjectForKey("shipCoors") as? [Coordinate]
}
func encodeWithCoder(coder: NSCoder) {
coder.encodeObject(shipCoors, forKey: "shipCoors")
}
}
Lớp Coordinate
cũng thuộc loại NSObject, NSCoding
, v.v ... Các đối tượng dường như nằm trong mảng khi tôi tải chúng (từ NSUserDefaults
)? Làm thế nào để tôi lấy chúng ra ?!
Bạn muốn 'ship.shipCoors?[index] ' – dan
Cảm ơn mọi người, đã có thể giải quyết vấn đề! –
Thuộc tính 'count' getter của bạn chỉ có thể là' return shipCoors? .count ?? 0' btw. – dan