创建对象时获取“未定义的引用错误”

时间:2012-12-14 08:26:18

标签: c++ heap linker-errors nodes

我的堆代码的第一部分:

Heap::Heap()
{
 MAX = 256;
 size = 0;
 data = new Hnode*[MAX];
}

我的主要文件很简单:

#include <iostream>
#include <stdlib>
#include "heap.h"

int main()
{
 string encodedData = "abracadabra";
 Heap heap;
}

当我调用堆时说:我得到一个错误:对Heap :: Heap的未定义引用,然后对我的析构函数也是如此:未定义引用Heap :: ~Heap()

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

假设您在heap.h中有类声明,在heap.cpp

中有定义

编译时似乎没有指定heap.cpp,因此链接器无法找到定义

尝试g++ main.cpp heap.cpp