这是我的tripe.cpp代码
//tripe.cpp
#include <iostream>
#include <string>
#include <functional>
#include "tripe.h"
#include <sstream>
#include <fstream>
using namespace std;
Tripe::Tripe()
{
trie = new Trie();
heap = NULL;
}
这是我的trie.h:
//trie.h
#ifndef TRIE_H
#define TRIE_H
#include <string>
#include "heapNode.h"
#include "trienode.h"
class Trie
{
Tnode* root_node;
public:
Trie();
~Trie();
编译器说:
在函数Tripe::Tripe()':
tripe.cpp:(.text+0x20): undefined reference to
Trie :: Trie()'
怎么没有明确定义?我把头文件包括在内!
答案 0 :(得分:2)
如果你有一个trie.cpp
文件,它实际上定义了构造函数Trie()
,那么你需要编译该文件并将其与你的应用程序链接。
答案 1 :(得分:1)
这是链接器错误。你有这个构造函数的定义(not just a declaration)吗?