改为使用C++ 11编写