Assignment operator in C++
using swap to make assignment operator exception safe
More C++ Idioms/Non-throwing swap
C++箴言:在operator= 中处理自赋值
http://stackoverflow.com/questions/3279543/what-is-the-copy-and-swap-idiom
http://stackoverflow.com/questions/3279543/what-is-the-copy-and-swap-idiom