ITyongzhen / ITyongzhen.github.io

0 stars 0 forks source link

Swift之类 | eagle #2

Open ITyongzhen opened 5 years ago

ITyongzhen commented 5 years ago

https://ityongzhen.github.io/Swift%E4%B9%8B%E7%B1%BB.html

ITyongzhen commented 5 years ago

图片用的github仓库,可能加载有的慢

YiHuaXie commented 5 years ago

我觉得你的那个KVC能触发KVO的理由说的比较牵强,willChangeValueForKey 和 didChangeValueForKey的调用只能证明触发KVO的时候会调用这两个方法,并不能证明KVC一定也能调用了,只是说从结果上看上去是那么回事

ITyongzhen commented 5 years ago

我觉得你的那个KVC能触发KVO的理由说的比较牵强,willChangeValueForKey 和 didChangeValueForKey的调用只能证明触发KVO的时候会调用这两个方法,并不能证明KVC一定也能调用了,只是说从结果上看上去是那么回事

谢谢提出意见。蒽,因为苹果对KVC中 setValue的源码是不开源的,只能从结果来看来证明确实调用过。但是我又查了GNUstep的源码 发现是可以证明确实调用了willChangeValueForKey和didChangeValueForKey,相关内容,我补充到了博客中,你可以看一下https://ityongzhen.github.io/KVC%E9%82%A3%E7%82%B9%E5%84%BF%E4%BA%8B.html