嗨,我读了关于未定义引用的其他问题和答案。但仍然无法找出我的代码有什么问题。我有一个简单的链表列表代码,其中我将整数添加到尾部,然后显示它们。这里是我的代码 “head.h”未定义的函数引用(链接器错误)
#ifndef __HEAD_H_INCLUDE
#define __HEAD_H_INCLUDE
class Node {
int info;
Node *next;
};
class imple {
public:
imple();
void addToTail(int);
void display(void);
private:
Node *head,*tail;
};
#endif
“implementaion.cpp”
#include<iostream>
#include "head.h"
imple::imple(){
head=tail=0;
}
void imple::addToTail(int key){
if(tail==0)
{tail=head=new Node();
info=key;next=0;}
else
{
tail->next=new Node();
info=key;next=0;
tail=tail->next;
}
}
void imple::display(){
Node *temp;
for(temp=head;temp->next !=0;temp=temp->next)
{
std::cout<<temp->info << " ";
}
}
“的main.cpp”
#include<iostream>
#include "head.h"
int main(){
Node node;
imple ab;
for(int i=0;i<5;i++)
ab.addToTail(i);
ab.display();
}
每次我编译我得到这个错误
“/tmp/cc20Z1ZH.o:功能main': lmain.cpp:(.text+0x10): undefined reference to
imple :: imple()' lmain.cpp :(文字+ 0x2a):未定义参考imple::addToTail(int)' lmain.cpp:(.text+0x45): undefined reference to
imple ::显示器()” collect2:LD返回1个退出状态”
您的答案和建议,将有助于
链接在一起你怎么编?什么是编译命令行? – fritzone
你的命令行是什么样的?你真的在编译'implementationaion.cpp'吗? –
使用g ++ main.cpp – Hemanth