初步认识继承
来源:互联网 发布:android手机投影到mac 编辑:程序博客网 时间:2024/05/22 15:33
#include "stdafx.h"
#include <iostream>
using namespace std;
//构造方式跟类内类对象是一样的
/*
父类:INFO
派生类:Sci
~派生类:~Sci
~父类:!INFO
*/
struct INFO //父类
{//信息
void inputINFO()
{
cout<<"请输入你的学号/姓名/性别(f:女/m:男):";
cin>>Numb>>szName>>sex;
}
void outputINFO()
{
cout<<"学号"<<"\t"<<"姓名"<<"\t"<<"性别"<<endl;
cout<<Numb<<"\t"<<szName<<"\t"<<sex<<endl;
}
INFO()
{
cout<<"父类:INFO"<<endl;
}
~INFO()
{
cout<<"~父类:~INFO"<<endl;
}
private :
int Numb;
char szName[20];
char sex;
};
struct Sci : public INFO //派生类
{//理科
void SinputSci()
{
cout<<"请输入你的数学/化学/物理:";
cin>>math>>chemistry>>physics;
}
void SoutputSci()
{
cout<<"数学"<<"\t"<<"化学"<<"\t"<<"物理"<<endl;
cout<<math<<"\t"<<chemistry<<"\t"<<physics<<endl;
}
Sci()
{
cout<<"派生类:Sci"<<endl;
}
~Sci()
{
cout<<"~派生类:~Sci"<<endl;
}
private:
float math;//数学
float chemistry;//化学
float physics; //物理
};
struct Arts : private INFO //派生类
//继承类的写法 继承类: (方式(public-private))+父类
{//文科
void AinputArts()
{
cout<<"请输入你的英语/语文/政治:";
cin>>English>>Chinese>>politics;
}
void AInpINFOs()
{
inputINFO();
//当加上私有private时派生类本身可以去调用 在外部声明之后就不能去调用了
//如果父类本身member或memberFunction是私有那么派生类也不能去调用只能父类自己在类内调用
}
void AOutINFO()
{
outputINFO();
}
void AoutputArts()
{
cout<<"英语"<<"\t"<<"语文"<<"\t"<<"政治"<<endl;
cout<<English<<"\t"<<Chinese<<"\t"<<politics<<endl;
}
private:
float English;
float Chinese;
float politics;//政治
};
int main(int argc, char* argv[])
{
Sci sci;
//return 0;
Arts art;
sci.inputINFO();
sci.SinputSci();
sci.outputINFO();
sci.SoutputSci();
//art.inputINFO();//Arts继承的方式是private继承的 父类成员函数的外部声明的对象无法调用
art.AInpINFOs();
//继承类中又一次调用父类的成员函数因为继承类是可以调用父类的函数不管继承的方式
art.AinputArts();
art.AOutINFO();
art.AoutputArts();
return 0;
}
//类内类对象
/*
INFO
{
private :
int Numb;
char szName[20];
char sex;
SCi sci;
Arts art;
}*/
//派生类其实就是把类内类内对象给封装了
#include <iostream>
using namespace std;
//构造方式跟类内类对象是一样的
/*
父类:INFO
派生类:Sci
~派生类:~Sci
~父类:!INFO
*/
struct INFO //父类
{//信息
void inputINFO()
{
cout<<"请输入你的学号/姓名/性别(f:女/m:男):";
cin>>Numb>>szName>>sex;
}
void outputINFO()
{
cout<<"学号"<<"\t"<<"姓名"<<"\t"<<"性别"<<endl;
cout<<Numb<<"\t"<<szName<<"\t"<<sex<<endl;
}
INFO()
{
cout<<"父类:INFO"<<endl;
}
~INFO()
{
cout<<"~父类:~INFO"<<endl;
}
private :
int Numb;
char szName[20];
char sex;
};
struct Sci : public INFO //派生类
{//理科
void SinputSci()
{
cout<<"请输入你的数学/化学/物理:";
cin>>math>>chemistry>>physics;
}
void SoutputSci()
{
cout<<"数学"<<"\t"<<"化学"<<"\t"<<"物理"<<endl;
cout<<math<<"\t"<<chemistry<<"\t"<<physics<<endl;
}
Sci()
{
cout<<"派生类:Sci"<<endl;
}
~Sci()
{
cout<<"~派生类:~Sci"<<endl;
}
private:
float math;//数学
float chemistry;//化学
float physics; //物理
};
struct Arts : private INFO //派生类
//继承类的写法 继承类: (方式(public-private))+父类
{//文科
void AinputArts()
{
cout<<"请输入你的英语/语文/政治:";
cin>>English>>Chinese>>politics;
}
void AInpINFOs()
{
inputINFO();
//当加上私有private时派生类本身可以去调用 在外部声明之后就不能去调用了
//如果父类本身member或memberFunction是私有那么派生类也不能去调用只能父类自己在类内调用
}
void AOutINFO()
{
outputINFO();
}
void AoutputArts()
{
cout<<"英语"<<"\t"<<"语文"<<"\t"<<"政治"<<endl;
cout<<English<<"\t"<<Chinese<<"\t"<<politics<<endl;
}
private:
float English;
float Chinese;
float politics;//政治
};
int main(int argc, char* argv[])
{
Sci sci;
//return 0;
Arts art;
sci.inputINFO();
sci.SinputSci();
sci.outputINFO();
sci.SoutputSci();
//art.inputINFO();//Arts继承的方式是private继承的 父类成员函数的外部声明的对象无法调用
art.AInpINFOs();
//继承类中又一次调用父类的成员函数因为继承类是可以调用父类的函数不管继承的方式
art.AinputArts();
art.AOutINFO();
art.AoutputArts();
return 0;
}
//类内类对象
/*
INFO
{
private :
int Numb;
char szName[20];
char sex;
SCi sci;
Arts art;
}*/
//派生类其实就是把类内类内对象给封装了
0 0
- 初步认识继承
- 继承的初步认识
- 继承初步
- 继承初步
- SpringData 学习(2)—— 使用注解替代继承标记接口、初步认识 Repository 接口
- IBM AIX初步认识
- 指针的初步认识!
- 初步认识Struts
- ARCSDE初步认识
- ajax初步认识
- 初步认识 JSON
- 初步认识JFreeChart
- Oracel初步认识
- 初步认识Irr引擎
- Struts初步认识
- openlayers 初步认识
- JavaScript 认识初步..
- 网络爬虫初步认识
- 数据结构之数组结构(一)
- VolleyAir
- 初步对消息队列RabbitMQ的了解
- 【UFLDL-exercise7-stacked autoencoder for digit classification】
- HibernateDaoSupport And SqlMapClientDaoSupport
- 初步认识继承
- OpenCV3.1.0+VS2013配置+Win7(64位)
- 欢迎使用CSDN-markdown编辑器
- Gallery的简单功能和用法(画廊视图)
- 334. Increasing Triplet Subsequence
- 禁止输入表情
- Struts 简单UI标签,ognl表达式语言几个符号
- Zookeeper学习三:HA学习
- 【bzoj2502】清理雪道