📄 ch15_6.cpp
字号:
//**********************
//** ch15_6.cpp **
//**********************
#include <iostream.h>
#include <string.h>
class Student{
public:
Student(char* pName);
~Student();
static Student* findname(char* pName);
protected:
static Student* pFirst;
Student* pNext;
char name[40];
};
Student* Student::pFirst = 0; //静态成员空间分配及初始化
Student::Student(char*pName)
{
strncpy(name,pName, sizeof(name));
name[sizeof(name)-1]='\0';
pNext=pFirst;
pFirst=this;
}
Student::~Student()
{
if(pFirst==this){
pFirst=pNext;
return;
}
for(Student* pS=pFirst; pS; pS=pS->pNext)
if(pS->pNext==this){
pS->pNext=pNext;
return;
}
}
Student* Student::findname(char* pName)
{
for(Student* pS=pFirst; pS; pS=pS->pNext)
if(strcmp(pS->name,pName)==0)
return pS;
return (Student*)0;
}
void main()
{
Student s1("Randy");
Student s2("Jenny");
Student s3("Kinsey");
Student* pS =Student::findname("Jenny");
if(pS)
cout <<"ok." <<endl;
else
cout <<"no find." <<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -