线程1:EXE_BAD_INSTRUCTION |分配对象数组值

时间:2016-02-13 20:20:16

标签: arrays swift object swift2

我创建了一个对象的数组列表并试图定义其中一个,起初它很好但是当我试图调用定义对象的函数时它会给我一个错误“Thread 1:EXC_BAD_INSTRUCTION(code = EXC_I386_INVOP,子代码0x0) 我的代码是这样的:

class Color {
var Red: Bool = true

func setRed(input: Bool) {
    self.Red = input
}

class ViewController: UIViewController {
//Create the object array
var Colors: [Color] = []
//asign values to the array inside a function
func setColors() {
    Colors[0].setRed(false)
}
override func viewDidLoad() {
    super.viewDidLoad()
    //call the function
    setColors()
}

1 个答案:

答案 0 :(得分:2)

首先需要创建一个新的Color实例,并将其添加到数组中。然后,您可以在Colors [0]

中设置一个值
 func setColors() {
      var c = Color();
      c.setRed(false);
      Colors.append(c);
 }