预期的声明错误(while循环)

时间:2016-03-03 17:12:11

标签: ios swift

我在iOS课程中,在制作我的应用时遇到了这个错误:

import Foundation
import UIKit

class RootsCateogry1: ViewController {

    @IBOutlet weak var roots1Label: UILabel!

    var rootsWeek1 = ["acro", "micro"]
    var rootsWeek1Meaning = ["Air", "Small"]
    var roots1Show = []
    var temp = rootsWeek1.count // error here
    var p = 0

    var i = 0
    while(i<temp){ // error here
        roots1Show.append(rootsWeek1temp)
        temp++
    }

    // ...
}

Screenshot

1 个答案:

答案 0 :(得分:1)

temp是计算属性,而不是编译时常量。您需要覆盖其getter或将其放在initviewDidLoad

var temp: Int {
    return rootsWeek1.count
}

或:

override func viewDidLoad() {
    super.viewDidLoad()

    var temp = rootsWeek1.count
}

你的while循环必须进入一个函数,它不能存在于类级别。考虑将其移至viewDidLoad。在将其添加到rootsWeek1temp之前,您也没有声明名为roots1Show的变量,因此如果对象不存在,编译器将不知道要附加到数组的内容。