奇怪的未定义参考!未定义引用`std :: __ default_alloc_template <true,0 =“”> :: deallocate(void *,unsigned int)'</true,>

时间:2010-11-24 14:27:38

标签: c++

当我编写程序时

我收到此错误

undefined reference to `std::__default_alloc_template<true, 0>::deallocate(void*, unsigned int)'

感觉不是在标准库或其他东西中找到引用。 是某种lib冲突吗? 基本上我试图将GCC 3.1.1上的一段代码移植到4.1.2

由于编译器有变化,我正面临这个问题

3 个答案:

答案 0 :(得分:1)

您是否仍然在3.1.1上链接其他组件,甚至链接错误的GNU库?

答案 1 :(得分:0)

您是否#include您正在使用的标准库组件的所有相应标头?

例如,

#include <cstdlib>
#include <vector>
#include <algorithm>
#include <functional>
#include <map>
#include <set>

答案 2 :(得分:0)

听起来像是在使用一些c ++代码。 'std'命名空间和'模板'。

尝试使用g ++编译代码,如果不起作用,请尝试使用“using namespace std;”在你的包含行之后。

请您提供至少几行来自错误的地方?

顺便说一下,发现这个链接的问题是:Here

他们建议安装libstdc ++。