http://www.cppblog.com/CppExplore/archive/2010/12/19/136951.html http://www.chinaunix.net/jh/4/904906.html