- Swift part8 [無断転載禁止]©2ch.net
74 :デフォルトの名無しさん (ワッチョイ 133c-HpYT)[sage]:2016/06/01(水) 17:56:16.68 ID:bUMaKpp30 - ↓のコードで、parentのvalのdidSetがよばれない。別のプロパティであればdidSetがよばれてますが、同一クラスの同一プロパティだと何か制限があるんでしょうか?メソッド経由でプロパティ変更した場合はよばれるんだけど一々不便。
class Node: NSObject { let name: String weak var parent: Node? = nil var val: Double = Double.NaN { didSet { print("name = ¥(self.name), old = ¥(oldValue), new = ¥(self.val)") self.parent?.val = self.val } } init(name: String, parent: Node? = nil) { self.name = name self.parent = parent super.init() } } let node1: Node = Node(name: "1") let node2: Node = Node(name: "2", parent: node1) let node3: Node = Node(name: "3", parent: node2) node3.val = 3
|
|