#include<iostream>
using namespace std;
class CEmplyee
{
public:
int m_ID;
char m_Name[128];
char m_Depart[128];
CEmplyee ()
{
memset(m_Name,0,sizeof(char)*128);//memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法
memset(m_Depart,0,sizeof(char)*128);
}
void OutputName()
{
cout<<"员工姓名"<<m_Name<<endl;
}
};
class COperator :public CEmplyee
{
public:
char m_Password[128];
bool Login()
{
if( strcmp(m_Name,"MR")==0 && strcmp(m_Password,"KJ")==0 )
{
cout<<"登陆成功"<<endl;
return true;
}
else
{
cout<<"登陆失败"<<endl;
return false;
}
}
};
void main()
{
COperator optr;
strcpy(optr.m_Name,"MR");
strcpy(optr.m_Password,"KJ");
optr.Login();
optr.OutputName();
}
继承是面向对象的主要特征(此外还有封装和多态)之一,它使的一个类可以从现有类中派生,而不必重新定义一个新类。继承的实质就是用已有的数据类型创建新的数据类型,并保留已有数据类型的特点,以旧类为基础创建新类,新类包含了旧类的数据成员和成员函数,并且可以在新类中添加新的数据成员和成员函数。
旧类被称为基类或者父类,新类被称为派生类或子类。