C++ typedef 映射错误

use*_*772 -1 c++ typedef stdmap std

在 Visual Studio 2013 终极版中:

一种)

using namespace std;
typedef map<string, double> my_set;
Run Code Online (Sandbox Code Playgroud)

=> 错误:地图不是模板

b)

typedef std::map<string, double> my_set;
Run Code Online (Sandbox Code Playgroud)

=> 错误:不允许使用限定名称

a 或 b 在文件 foo.h 中,两个版本都不起作用。我究竟做错了什么?(是的,花了一些时间谷歌搜索 => 没有结果,c++ 是一种奇怪的语言)

Kyr*_*iev 6

你包括<map>和<string>吗?

#include <map>
#include <string>

typedef std::map<std::string, double> my_set;
Run Code Online (Sandbox Code Playgroud)