2012-12-14 181 views
0

我堆代码的第一部分时,遇到了“未定义引用错误”:创建对象

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

我的主要文件就是:

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

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

我拿到的时候我打电话给犯错误一堆说:未定义的引用堆::堆,然后以及我的析构函数:未定义的引用堆::〜堆()

任何想法?

+2

很难说那些小代码示例。我假设你的类和方法定义在头文件“heap.h”中,不是吗?也许你应该展示更多的标题。 –

回答

1

假设你有heap.h类的声明和定义在heap.cpp

看来你还没有指定heap.cpp当你编译,所以链接器无法找到定义

尝试做g++ main.cpp heap.cpp