2012-12-14 174 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