[原创]c++线性表的插入
2007-08-01 11:03 Virus-BeautyCode 阅读(1567) 评论(0) 编辑 收藏 举报超简单的线性表的插入
List.h
class List
{
public:
List(int MaxListSize=10)
{
maxSize=MaxListSize;
element=new int[maxSize];
length=0;
}
~List()
{
delete []element;
}
bool IsEmpty() const//const:表示在函数中不可以修改对象的数据
{
return length==0;
}
int Length()
{
return length;
}
// bool Find(int k, int &x) const;
// int Search(const int &x) const;//第一个const表示在函数中不可以修改传递的参数,第二个const表示在
// //函数中不可以修改对象的数据
List &Insert(int k, const int &x);
private:
int length;
int maxSize;
int *element;
};
List.cpp
#include "List.h"
#include <iostream>
using namespace std;
List &List::Insert(int k, const int &x)
{
if(k<0 || k>length)
{
exit(1);
}
if(length==maxSize)
{
exit(1);
}
for(int i=length;i>=k;i--)
{
element[i+1]=element[i];
}
element[k]=x;
length++;
return *this;
}
main.cpp
#include <cstdlib>
#include <iostream>
#include "List.h"
using namespace std;
int main(int argc, char *argv[])
{
List l;
cout<<"Length="<<l.Length()<<endl;
cout<<"IsEmpty="<<l.IsEmpty()<<endl;
l.Insert(0,0);
l.Insert(1,1);
l.Insert(2,2);
l.Insert(3,3);
cout<<"current Length is "<<l.Length()<<endl;
//l.OutPut();
//l.Insert(
system("PAUSE");
return EXIT_SUCCESS;
}