ฉันมีกรอบที่รวดเร็วที่กำหนดโครงสร้าง:
public struct CollectionTO {
var index: Order
var title: String
var description: String
}
อย่างไรก็ตามฉันไม่สามารถใช้ initializer ที่ชาญฉลาดของสมาชิกโดยปริยายจากโครงการอื่นที่นำเข้าห้องสมุด ข้อผิดพลาดคือ 'CollectionTO' ไม่สามารถเริ่มต้นได้เนื่องจากไม่มี initialisers ที่สามารถเข้าถึงได้ นั่นคือมันไม่ได้ให้ค่าปริยายของสมาชิกเริ่มต้นที่ฉลาดโดยใช้คำสำคัญสาธารณะ
var collection1 = CollectionTO(index: 1, title: "New Releases", description: "All the new releases")
ฉันต้องเพิ่มวิธีการเริ่มต้นของตัวเองเช่น:
public struct CollectionTO {
var index: Order
var title: String
var description: String
public init(index: Order, title: String, description: String) {
self.index = index;
self.title = title;
self.description = description;
}
}
... แต่ฉันไม่ต้องการถ้ามีวิธีอื่นที่ใครจะรู้?