I have written a Input function and I call it in my client file but when I build it I get a unresolved external error. I can't understand why I am getting this error?
This is the input functon: void Input(ifstream& fin, ofstream& fout);
#include<fstream.h>
struct node;
typedef node *Nodeptr;
struct node
{
int key_value;
node *left;
node *right;
//node *leaf;
};
//template<class Type>
class btree
{
public:
btree();
~btree();
void insert(int key);
void InOrderTranverse();
void preOrderTranverse();
void PostOrderTranverse();
void destroy_tree();
void Input(ifstream& fin, ofstream& fout);
//void LevelOrder();
void Output(const char prompt[]);
node *search(int key);
private:
void insert(int key, node *leaf);
void InOrderTranverse(node *leaf);
void preOrderTranverse(node *leaf);
void PostOrderTranverse(node *leaf);
void destroy_tree(node *leaf);
//void LevelOrder(node *leaf);
node *search(int key, node *leaf);
node *root;
};
/* template <class QueueItem> class Queue {
private:
QueueItem buffer[100];
int head, tail, count;
public:
Queue();
void Insert(QueueItem item);
QueueItem Remove();
int Size();
~Queue();
};
implementation
#include"BSTTreeAndyJackson.h"
#include<iostream>
#include<fstream.h>
ifstream fin;
ofstream fout;
//Note: This is not the complete Implementation file but just the finction
void Input(ifstream& fin, ofstream& fout)
{
int num=0;
char chr;
fin.open("input.txt");
fout.open("output1.txt");
fin>>num;
fin>>chr;
}
#include<iostream>
#include<fstream>
#include<iomanip>
#include<queue>
#include"BSTTreeAndyJackson.cpp"
using namespace std;
//template<class Type>
//template <class QueueItem>
int main()
{
//Declare the class, struct, and variables
btree bt;
node nd;
int num=0;
char chr;
int count=0;
//queue<int> q;
//Open the input and output files
//fin.open("input.txt");
//fout.open("output1.txt");
//Priming read into the while loop
// fin>>num;
// fin>>chr;
bt.Input(fin,fout); //The call
while(!fin.eof())
{ bt.search(num);
count++;
fout<<"Step: "<<count<<" "<<"Data Value = "<<num<<" "<<
"Activity Signal = "<<chr<<endl<<endl;
if(chr == 'A')
{
bt.insert(num);
}
else if(chr == 'D')
{fout<<endl;
bt.Output("D is not the correct input Activity signal");
fout<<endl<<endl;
count--;
}
//Call the functions for the list tranversal
bt.Output("InOrderTranverse = ");
bt.InOrderTranverse();
fout<<endl<<endl;
bt.Output("PreOrder Tranverse = ");
bt.preOrderTranverse();
fout<<endl<<endl;
bt.Output("PostOrder Tranverse = ");
bt.PostOrderTranverse();
fout<<endl<<endl;
bt.Output("LevelOrderTranverse = ");
//bt.LevelOrder();
fout<<endl<<endl;
bt.Output("Total number of Nodes in the tree = ");
fout<<count;
fout<<endl<<endl<<endl;
// fin>>num;
// fin>>chr;
}
return 0;
}