【发布时间】:2017-08-25 07:33:50
【问题描述】:
我有一个名为Challenges 的类,其定义如下:
class Challenges {
var title : String?
var description : String?
var points : Int?
var status : String?
var img :String?
init (title : String ,description : String , point : Int , status : String , img : String){
self.title = title
self.description = description
self.points = point
self.status = status
self.img = img
}
}
然后我正在尝试创建它的一个实例:
var test = Challenges(title: "indoor", description: "hard", point: 123 , status: "Done", img: "img.com")
然后我想将实例放入一个数组中:
var holdChallenges : [Challenges] = [test]
然后我收到以下错误:
Cannot use instance member 'bounds' within property initializer; property initializers run before 'self' is available
所以我把它改成:
lazy var holdChallenges : [Challenges] = [self.test]
然后我收到以下错误:
NSObject类型的值没有值成员test
【问题讨论】:
-
在哪里你定义
test和holdChallenges变量? -
您的代码中也没有“实例成员'边界'”。请展示一个真实的独立示例来说明问题。
-
当初始化程序需要非可选值时,为什么你的属性是可选的?由于这些是将要使用的值,因此为参数设置可选类型似乎毫无意义。
标签: ios arrays swift class object