a652751663 2015-06-16 00:35 采纳率: 0%
浏览 1447

关于链表在函数对象中节点的存储问题

代码如下,写的是职工信息管理系统的前部分代码,通过类的对象p把数据保存在了结点中,但是只是对象,无法永久保存在链表里面,翻了很多书,代码,实在想不通,有人说用指针的引用List*&p来解决,但是我还是不懂,求大神帮帮忙吧,我一个人实在解决不了了,跪求大神啊,,,,,,
#include
#include
#include
using namespace std;
class Stuff
{
public:
char* Name;
int medium;
char* pNo;
char* pDepno;
char* pSalary;
class Stuff* next;
Stuff()
{
Name=NULL;
medium=NULL;
pNo=NULL;
pDepno=NULL;
pSalary=NULL;
next=NULL;
}
};
class List
{
int medium;
Stuff* Head;
public:
List()
{
medium=0;
Head=new Stuff;
}
void Add(); //添加员工信息
void AddInput(char*no,char*name,char*dep,char*salary); //添加员工数据重载单链表
void output(); //输出员工信息
void stuffswap(Stuff* a,Stuff* b);//信息交换
void sordon(); //通过pno指针将职工记录按no从小到大链接起来
void depno(); //通过pdepno指针将职工记录按depno从小到大链接起来
void outputdepno(); //沿pdepno链输出全部职工信息
void sordsalary(); //通过psalary指针将职工记录按salary从小到大链接起来
void empty(); //清空员工信息
void savexit(); //存储到文件并退出
~List();
};
void List::AddInput(char no,char *name,char *dep,char *salary)
{
Stuff
q=new Stuff;
Stuff* p=Head;
q->pNo=new char[strlen(no)+1];
q->pDepno=new char[strlen(dep)+1];
q->pSalary=new char[strlen(salary)+1];
q->Name=new char[strlen(name)+1];
strcpy_s(q->pNo,2,no);
strcpy_s(q->pDepno,2,dep);
strcpy_s(q->pSalary,4,salary);
strcpy_s(q->Name,2,name);
//medium++;
for(;q->next!=0;q=q->next)
{p->next=q;}
}
void List::Add() //员工信息添加
{
Stuff*p=new Stuff;
char no[50],name[50],dep[50],salary[50];
int select;
do
{
cout<<"请输入职工号:";
cin>>no;
cout<<"请输入员工姓名:";
cin>>name;
cout<<"请输入部门号:";
cin>>dep;
cout<<"请输入工资数:";
cin>>salary;
while(cin.fail())
{
cout<<"请输入正确的工资数。";
cin.clear();
fflush(stdin);
cin>>salary;
}
cout< /*p->pNo=no;
p->pDepno=dep;
p->Name=name;
p->pSalary=salary;
medium++;
p->next=Head->next;
Head->next=p;
//for(int i=0;i //{
//p->next=
//}*/
cout<<"数据添加成功!是否继续添加?(Y/N)";
cin>>select;
}
while(select=='y'||select=='Y');
//AddInput(no,name,dep,salary);
output();
}

  • 写回答

1条回答

  • 帘卷西风 博客专家认证 2015-06-16 02:40
    关注

    你这个问题描述不是很清楚,对象或者指针都可以存在链表里面啊。

    评论

报告相同问题?

悬赏问题

  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题