VC自己在标准友拆库头文件utility中,定义过了swap(如粗唤下)。你包#include ,就最岩告凯终也#include 。这个swap()和你自己定义的void swap(T &a, T &b)冲突了。你考虑换个名字?// TEMPLATE FUNCTION swap (from )template inlinevoid swap(_Ty& _Left, _Ty& _Right){// exchange values stored at _Left and _Right_Ty _Tmp = _Move(_Left);_Left = _Move(_Right);_Right = _Move(_Tmp);}