しめ鯖日記

swift, iPhoneアプリ開発, ruby on rails等のTipsや入門記事書いてます

Swiftではdeallocがなくなってdeinitが導入されていた

initで設定したNSNotificationの解除をどこでやる際にdeallocがない事に気がついたのでその事をメモ。
Swiftではdeallocでなくdeinitを使います。

class A {
    init() {
        print("init")
    }
    
    deinit {
        print("deinit")
    }
}

var a = A()
a = A()

deinitを書く時は括弧を付けません。
deinit()と書くとNo parameter clause allowed on deinitializerというエラーが出ます。
パラメータがないから括弧も不要という事のようです。