上次看到魔兽世界的一个任务,水图腾,挺有意思的任务说明,“水意味着重生。水流动着,消蚀和清洗一切事物。水的治疗和恢复能力是无与伦比的,但这只有在水是完全纯洁的情况下。如果水受到了污染,那么它将毁灭一切它接触到的东西”。 可以设想,起初,纯洁的水不会伤害任何生命,在时空中自由流溢,直到有异物进入水中,或与水融为一体,例如酸雨,或只是夹杂在水中,例如泥沙,当这类水与生命接触的时候,我们可以说,不是水伤害了生命,而是水中的酸,或是泥沙,伤害了生命,这样一来,水只是载体,真正起作用的是它携带的异物。 貌似C++的STL就是这种情况,Map,Vector等不过是水而已,携带着进入水中的异物,能起作用的不过是异物罢了,所以,当存入一个对象的时候,容器,只是容纳这个对象的容器而已,要起作用的,还是存入的对象。