指针中getnext()和setnext()函数的区别

有三个指针 Point* q ,Point* p , Point* m .
(1)如果三个指针是连续的
q->getnext()就表示是指针Point *p。
(2)如果这三个指针不是链表
q->setnext(p)表示指针q指向p。

#include <bits/stdc++.h> using namespace std; class Student { protected: string name_; bool sex_; int grade_; Student next; public: Student(string name, bool sex, int grade):name(name), sex(sex),grade(grade) { cout<<"A student named by "<<name<<" is created!"<<endl; } ~Student() { cout<<"A student named by "<<name<<" is erased."<<endl; } void showInfo() { cout<<"name = "<<name<<", sex = " <<sex_<<", grade = "<<grade_<<";"; } Student getNext() { return next; } void setNext(Student* s) { next=s; } }; class StudentCadre:public Student { protected: string position_; public: StudentCadre(string name, bool sex, int grade, string pos) :Student(name,sex,grade),position(pos) { cout<<"A student cadre with position "<<position<<" is created."<<endl; } ~StudentCadre(){cout<<"A student named by "<<name<<" is erased."<<endl;} void showInfo() { cout<<"name = "<<name<<", sex = " <<sex<<", grade = "<<grade<<"; position = "<<position_<<"."; } }; int main() { int num; string name, position; bool sex; int grade; Student *header, *student, curStudent; cin>>name>>sex>>grade>>position; header = new StudentCadre(name, sex, grade,position); curStudent = header; cin>>num; for (int i = 0; i < num; i++) { cin>>name>>sex>>grade; student = new Student(name, sex, grade); curStudent -> setNext(student); curStudent = curStudent -> getNext(); } ((StudentCadre)header) -> showInfo(); cout<<endl; curStudent = header; while (curStudent -> getNext() != NULL) { curStudent = curStudent -> getNext(); curStudent->showInfo(); cout<<endl; } curStudent = header; while (curStudent != NULL) { student = curStudent; curStudent = curStudent -> getNext(); delete student; } return 0; }这段代码有什么问题
05-29
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值