关于STL的地图中用到string的初级有关问题

关于STL的map中用到string的初级问题
源代码如下,编译不通过,请求指点,该如何修改


// testSTL.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"

#include <map>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
map<string,int> mapTest;
//!!以下两句放开任何一句,编译均无法通过!!  请问正确该如何使用??
//mapTest["hello"]=1;
//mapTest.find("hello");

return 0;
}



编译出现错误,最上面一条是这样的:error C2784: “bool std::operator <(const std::_Tree<_Traits> &,const std::_Tree<_Traits> &)”: 无法从“重载函数类型”为“const std::_Tree<_Traits> &”推导 <未知> 参数

请高手指点。
------解决方案--------------------
加上
#include <string>