count swift类的实例数

Gov*_*Rai 6 class swift

你如何计算Swift中一个类的实例数?我有以下课程:

class car {
    static var carPopulation: Int = 0
    var color: String
    var capacity: Int
    var driver: Bool?
    var carOn: Bool = false
    init (carColor: String, carCapacity: Int) {
        self.capacity = carCapacity
        self.color = carColor
        carPopulation ++ //##########GIVES ME ERROR#############
    }
    func startCar() {
        self.carOn = true
    }
}

class raceCar : car {
    var nitro: Bool
    init(carColor: String, carCapacity: Int, hasNitro: Bool) {
        self.nitro = hasNitro
        super.init(carColor: carColor, carCapacity: carCapacity)
    }
}

car.CarPopulation //outputs 0 in xcode playground
Run Code Online (Sandbox Code Playgroud)

我假设我需要一个函数来实际返回值,但我希望每次创建类的实例时计数器都会增加.

我收到以下错误:

error: static member 'carPopulation' cannot be used on instance of type 'car'

Ado*_*lfo 9

在初始化方法中,您必须在静态var中添加一个

Car.carPopulation += 1
Run Code Online (Sandbox Code Playgroud)

并且您必须实现de deinitializer来删除将要消失的汽车实体

deinit
{
    Car.carPopulation -= 1
}
Run Code Online (Sandbox Code Playgroud)