https://zhuanlan.zhihu.com/p/25134841 https://wenku.baidu.com/view/ab3421d06f1aff00bed51e34.html http://blog.csdn.net/tao546377318/article/details/53811584 http://c.biancheng.net/cpp/html/234.html http://blog.csdn.net/lin_fs/article/details/7804494