126类和对象_面像对像_继承
学习内容
继承
语法
class 子类名 : 继承方式 父类名
class PersonModel : public BaseModel
继承方式 : publc , protected, private
代码
#include<iostream>
using namespace std;//cout 在这里,没有它会报错
#include<string>
//126类和对象_面像对像_继承
//学习内容
//继承
//语法
//class 子类名 : 继承方式 父类名
//class PersonModel : public BaseModel
//继承方式 : publc , protected, private
//父类,基类
class BaseModel
{
public://公共
string m_Name;
static string m_Remark;//静态成员
string m_Text;
protected://保存
int m_Age;
private://私有
string m_Password;
};
//子类 继承 了父类
class PersonModel : public BaseModel
{
public:
string m_Sex;
string m_Text;
PersonModel()
{
}
PersonModel(string name,int age,string sex)
{
m_Name = name;
m_Age = age;//父类继承过来的公共成员和保护成员在子类中都可以访问
m_Sex = sex;
}
};
void test04()
{
PersonModel p1("张三",18,"男");
//对象访问静态成员
p1.m_Remark = "备注";
//类名访问静态成员
PersonModel::m_Remark = "备注1";
//访问父类同名成员
// BaseModel 作用域,就是父类的类名
p1.BaseModel::m_Text = "test";
cout << "姓名:" << p1.m_Name << endl;
cout << "性别:" << p1.m_Sex << endl;
//cout << "年龄:" << p1.m_Age << endl;//保护性,和私有 成员在类外无法访问
}
int main()
{
test04();
system("pause");
}