C++模板类问题求教

来源:互联网 发布:为知笔记导出 编辑:程序博客网 时间:2024/06/05 19:22
出现LINK错误,写的方式跟以前写的也都差不多,始终不知道错在了哪里,求大牛帮忙解决。
//main.cpp#include"Head.cpp"#include<iostream>#include<stdlib.h>using namespace std;typedef Car<int> CarInt;Aqueue<CarInt> BianDao;void main(){int n = rand() % 6;int time = 1;for (int i = 0; i<n; i++){Car<int> car(time);BianDao.QInsert(car);}}
#Head.cpp#ifndef Head_H#define Head_Htemplate<class T>class Aqueue{int front;int rear;int count;T* QArray;int size;public:Aqueue(int MaxQueueSize = 5);~Aqueue(void){ delete[]QArray; }bool QInsert(const T&item);bool QDelete(const T&item);void QClear(void){ front = rear = count = 0; }bool IsEmpty(void)const{ return count == 0; }bool IsFull(void)const{ return count == size; }};template <class T>class Car{int Car_Number;int Start_Time;int Out_Time;public:Car(const T&item);~Car();bool Get_Car_Number(const T&item){ item = Car_Number; }bool Get_Start_Time(const T&item);bool Get_Out_Time(const T&item);bool Set_Start_Time(const T&item);};template<class T>class Park{int Status;int GetCarAmount;int OutCarAmount;int Amout_Time;int Money_Amount;public:bool Get_Status(const T&item);bool Set_Status(const T&item){ item = Status; }bool Get_GetCarAmount(const T&item);bool Set_GetCarAmount(const T&item);bool Get_AmoutTime(const T&item);bool Set_AmuontTime(const T&item);bool Get_OutCarAmount(const T&item);bool Set_OutCarAmount(const T&item);bool Get_Money_Amount(const T&item);bool Set_Money_Amount(const T&item);};#endif;
<pre name="code" class="cpp">//park1.cpp#include"Head.cpp"#include<iostream>#include<stdlib.h>using namespace std;template<class T>bool Aqueue<T>::QInsert(const T&item){if (IsFull()){ cout << "队列已满" << endl; return false; }QArray[rear] = item;rear = (rear + 1) % size;count++;return true;}template<class T>bool Aqueue<T>::QDelete(const T&item){if (IsEmpty()){ cout << "队列为空" << endl; return falese; }item = QArray[front];front = (front + 1) % size;count--;return true;}template<class T>Aqueue<T>::Aqueue(int MaxQueuesize){size = MaxQueuesize;QArray = new T[MaxQueuesize];count = front = rear = 0;}template <class T>bool Car<T>::Get_Start_Time(const T&item){item = Start_time;return true;}template <class T>bool Car<T>::Set_Start_Time(const T&item){Start_time = item;return true;}template<class T>Car<T>::Car(const T&item){Car_Number = 9999 + rand() % 99999;Start_Time = item;}




0 0
原创粉丝点击