小编Dav*_*ult的帖子

<unordered_set>中的错误?

我正在构建一个仅包含头的库(有充分理由;不要讨厌),它包含一个类和类成员函数的实现.这样做我遇到了一个非常奇怪的错误<unordered_set>.搜索GCC的Bugzilla似乎没有发现任何似乎解决这个问题.

我破坏(严重)的代码在我的命名空间中包含了包含.

namespace probability {

#include <string>
#include <unordered_set>  // only this include breaks
#include <unordered_map>  

class ProbabilityTools
{
...
Run Code Online (Sandbox Code Playgroud)

偶然的机会,我把#includes移到了类命名空间之外,并修复了问题<unordered_set>.当仅放置在命名空间内时,其他任何包都不会导致此问题<unordered_set>.

#include <string>
#include <unordered_set>   // works when outside the namespace
#include <unordered_map>

namespace probability {

class ProbabilityTools
{
...
Run Code Online (Sandbox Code Playgroud)

我正在使用GCC g ++ 4.8和-std = c ++ 11构建此代码,该代码在第二种配置中工作<unordered_map>,并且在两种配置中都可以使用.

这可能是一个libstdc ++ bug吗?GCC错误?

c++ libstdc++ c++-standard-library g++4.8

2
推荐指数
1
解决办法
186
查看次数

标签 统计

c++ ×1

c++-standard-library ×1

g++4.8 ×1

libstdc++ ×1