📄 my_list.cpp
字号:
#include<iostream.h>
#include"my_list.h" //类的定义要写在.h文件中,函数只需要在.h文件中声明即可,而在.cpp文件中不能再有类的定义
/*
class Item
{
public:
friend class MY_List;
private:
Item(int d=0)
{data=d; next=0;}
Item *next;
int data;
};
class MY_List
{
public:
MY_List()
{list=0;}
MY_List(int d)
{list=new Item(d);}
int Print();
int Insert(int d=0);
int Append(int d=0);
void Cat(MY_List &il);
void Reverse();
int Length();
private:
Item *end();
Item *list;
};
*/
int MY_List::Print()
{
if(list==0)
{
cout<<"empty\n";
return 0;
}
cout<<"(";
int cnt=0;
Item *pt=list;
while(pt)
{
if(++cnt%40==1&&cnt!=1)
cout<<endl;
cout<<pt->data<<" ";
pt=pt->next;
}
cout<<")\n";
return cnt;
}
int MY_List::Insert(int d)
{
Item *pt=new Item(d);
pt->next=list;
list=pt;
return d;
}
int MY_List::Append(int d)
{
Item *pt=new Item(d);
if(list==0)
list=pt;
else
(end())->next=pt;
return d;
}
Item *MY_List::end()
{
Item *prv,*pt;
for(prv=pt=list;pt;prv=pt,pt=pt->next)
;
return prv;
}
void MY_List::Cat(MY_List &il)
{
Item *pt=il.list;
while(pt)
{
Append(pt->data);
pt=pt->next;
}
}
void MY_List::Reverse()
{
Item *pt,*prv,*tmp;
prv=0;
pt=list;
list=end();
while(pt!=list)
{
tmp=pt->next;
pt->next=prv;
prv=pt;
pt=tmp;
}
list->next=prv;
}
int MY_List::Length()
{
int cnt=0;
Item *pt=list;
for(;pt;pt=pt->next,cnt++)
;
return cnt;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -