什么库包含地图STL集合?

时间:2012-08-30 16:36:37

标签: c++ stl shared-libraries lnk2001

我正在尝试编译项目,但是当我包含一个地图对象时,它会给我一个LNK2001错误。我已经包含了正确的头文件,但我不知道我应该包含哪些库。

我正在使用Visual Studio 2008,当我将“忽略所有默认库”设置为“否”时,它将起作用,但是设置该方式的属性不是最终结果的允许选项。我以为会有某种全STL库,但我的代码中有向量和出列,它们工作正常。只有当我在地图对象中添加错误时才会显示。

3 个答案:

答案 0 :(得分:1)

正确的包含应该是这样的:

#include <map>

正确的地图初始化看起来应该是这样的:

std::map<int, char> mymap;

答案 1 :(得分:1)

所以,朋友有类似的问题,我需要的库是msvcprt.lib。

答案 2 :(得分:0)

这可能是STL实现中的一个优化 - 不依赖于任何模板参数的代码被拆分为基类,因此在所有实例中只使用一个副本,并且此副本保存在C ++中标准库,因此您将无法避免链接此库。