11.1:派生类的使用
来源:互联网 发布:淘宝如何认证企业店铺 编辑:程序博客网 时间:2024/06/06 05:39
定义
定义
自己概述
类的一中继承方式
~派生类就是将父类的元素(不含私有)作为~方式来继承
文本概述
派生类==子类
单继承+多继承(拥有基类数目的多少)
基类所有性质+自身独特性质
定义形式
class 派生类名:派生类方式 基类名{}
继承方式
继承方式
基类成员
public
公有继承
protected
保护继承
private
私有继承
存在地点
public
public
Protected
Private
任何
protected
protected
protected
Private
基类+子类+友元
private
private
不可访问
不可访问
基类+友元
[定义+继承方式]代码练习
/*
* 题目名称:派生类的调用应用
* 输出:the result of ob.getp() is: +145
/10+20+30
* 评论:派生类对基类成员的调用形式:直接+间接
无论是子类还是基类,在外部被访问时遵守的规则都是一样的
在调用类中的函数时要看清它是什么访问控制形式
* 难度系数:3
*/
#include <iostream>
using namespace std;
class A
{
private:
int s;
protected:
int r; //声明变量r为保护成员
public:
int t;
void setst(int n,int m)
{
s=n;
t=m;
}
int gets()
{
return s;
}
};
class B:protected A //类B以保护继承的方式继承类A的成员
{
private:
int p;
public:
void setsrp(int n,int m,int l)
{
setst(n,m);
r=m;//可直接访问从基类中保护继承的成员
p=l;
}
int getp()
{
p=p+t*gets(); //通过基类的成员函数间接访问基类的私有成员
return p;
}
};
void main()
{
B ob;
ob.setst(12,12);//非法,不能通过类外对象访问从基类保护继承来的成员
ob.setsrp(12,12,5);
cout<<"the result of ob.getp() is: "<<ob.getp()<<endl;
system("pause");
}
- 11.1:派生类的使用
- CDC及其派生类的使用
- 总结:怎样使用CListCtrl的派生类
- 第十一章[1]:派生类的使用
- 使用CDC的派生类进行绘图
- MFC CWinApp派生类中使用CFrameWnd派生类的成员函数Create来创建窗口
- 直接使用CRecordset,不使用CRecordset的派生类
- 派生类的尴尬
- 派生类的继承
- 10.1 类的派生
- 点的派生类
- 派生类的声明
- 派生类的构成
- 派生类的析构器
- TreeCtrl的使用和一个CTreeCtrl的派生类
- CTreeCtrl的使用和一个CTreeCtrl的派生类
- CTreeCtrl的使用和一个CTreeCtrl的派生类
- 基类对象与派生类对象的使用关系
- 伪元素::after和::before
- Java中输入流的read()为阻塞式方法的相关实例
- 读《自己动手写操作系统》(于渊著)第一节
- 在循环中删除集合的元素
- 线程的几种状态
- 11.1:派生类的使用
- 《UNIX环境高级编程》十九伪终端读书笔记
- Node.js 之 log4js 完全讲解
- Makefile中用宏定义进行条件编译(gcc -D)/在Makefile中进行宏定义-D
- 用webpack把我们的业务模块分开打包
- Android 四大组件之 Activity-带值跳转
- Servlet工作原理解析
- 关于我博客的所有内容
- Top K Frequent Elements