他们
把add封装为
if(!add(...)) set(...);
把replace封装为
if(!replace(...)) set(...);
把increment封装为
if(!increment(...)) set(...);
现在,所有的操作都不会返回false了,使用者可以无脑的调用,不用做任何返回值的检测。
只是,当他们真的需要add, replace, increment的语义时,他们怎么办?
这个你不用当心,劳动人民的智慧是无穷的:
我曾经见过一个更奇葩的,他把set封装为
if(!get(...)) add(...);
else replace(...);
按照同样的思路,当他们真的需要add, replace, increment时,会先用get检测一下。