我的堆代码的第一部分:
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()
有什么想法吗?
答案 0 :(得分:1)
假设您在heap.h
中有类声明,在heap.cpp
编译时似乎没有指定heap.cpp
,因此链接器无法找到定义
尝试g++ main.cpp heap.cpp