namespace boost没有成员

时间:2016-05-02 09:40:05

标签: c++ boost

我下载了最新版本的Boost库1_60_0,我尝试使用它,但我很快遇到了麻烦。

boost::unordered_map<int, int> map;

这段代码说&#34;名称空间提升没有成员unordered_map&#34;。我检查了文件,但它在那里。基本上我尝试从boost命名空间访问的所有内容都发生了同样的情况。

标题包括如下:

#include <D:/IP/boost_1_60_0/boost/graph/adjacency_list.hpp>
#include <D:/IP/boost_1_60_0/boost/graph/graph_traits.hpp>
#include <D:/IP/boost_1_60_0/boost/graph/connected_components.hpp>
#include <D:/IP/boost_1_60_0/boost/unordered_map.hpp>
#include <D:/IP/boost_1_60_0/boost/graph/floyd_warshall_shortest.hpp>
#include <D:/IP/boost_1_60_0/boost/numeric/ublas/matrix.hpp>
#include <D:/IP/boost_1_60_0/boost/numeric/ublas/io.hpp>

我猜我应该包含更多内容,但不知道是什么。有什么提示吗?

1 个答案:

答案 0 :(得分:3)

unordered_map.hpp以这种方式包含其他boost头文件:

#include <boost/config.hpp>

这意味着必须将boost文件夹设置为其他包含目录才能生效。

我假设您正在编译MSVC,如果是,请右键单击您的项目:properties - &gt; C / C ++ - &gt;常规并将文件夹D:/IP/boost_1_60_0/添加为其他包含目录。

docs也会为您回答这个问题。