继承、重载与多态
继承是C中的一个重要特性它可以让我们从一个类的部分成员继承并新建立一个类class 派生类名 : 继承方式(public/protected/private) 基类名例如//基类 class Animal{ eat(); sleep(); } //派生类 class Dog : public Animal{ bark(); //此时Dog类就继承了Animal类的eat和sleep两个成员函数 }派生类可以访问基类的所有非私有成员因此如果不想被派生类访问某些成员应该在基类中将这部分成员私有。派生类可以继承所有基类的成员函数但不包括以下几种情况基类的构造函数、析构函数和拷贝构造函数基类的重载运算符基类的友元函数C的多态C的多态按字面意思理解就是多种形态。当类之间存在层次结构并且类之间是通过继承关联时就会用到多态。C的多态意味着在调用成员函数是会根据调用函数的对象的类型不同执行不同的函数。简而言之就是“一种接口多种方法”。 C运行时的多态性是通过虚函数实现的。 即虚函数允许子类重新定义成员函数而子类重新定义父类的做法成为覆盖(Override)。程序实例如下#include iostream using namespace std; class Shape{ protected: int width, height; public: Shape(int a0, int b0){ width a; height b; } virtual int area(){ cout Parent class area: endl; return 0; } }; class Rectangle: public Shape{ public: Rectangle(int a0, int b0):Shape(a, b){ } int area(){ cout Rectangle class area: endl;不可重载运算符成员访问运算符. 成员指针访问运算符 .* , - * 域运算符: :: 长度运算符sizeof 条件运算符? 预处理运算符#可重载的运算符双目算术运算符, -, *, /** 关系运算符 , !, , , , 逻辑运算符 ||, , ! 单目运算符 (正), -(负), *(指针), (取地址) 自增自减运算符 , -- 位运算符 |, , ~(按位取反), ^(按位异或), , 赋值运算符 , , -, * , /, %, , |, ^, , 空间申请与释放new, delete, new[], delete[] 其他运算符: ()(函数调用), -(成员访问), ,(逗号), [](下标)多继承C中一个子类可以有多个父类即多继承。多继承的格式如下所示基类之间用逗号隔开class 派生类名:继承方式1基类名1,继承方式2基类名2,... { 派生类体 }运算符重载C内大部分运算符都可以被重载其为一种特殊的函数函数名为operator后紧跟被重载的运算符例如对A类重载加号运算符A operator(const A); //可以用this指针节省一个加运算过程中调用的输入完整实例#include iostream using namespace std; class Box { public: double getVolume(void){ return length*breadth*height; } void setSize(double l, double b, double h){ length l; breadth b; height h; } // 重载 运算符用于把两个BoX对象相加 Box operator(const Box b){ Box box; box.length this-length b.length; box.breadth this-breadth b.breadth; box.height this-height b.height return box; } private: double length; double breadth; double height; } int main(){ Box box1, box2, box3; box1.setSize(5.0, 6.0, 7.0); box2.setSize(1.0, 2.0, 3.0); box3 box1 box2; return 0; }注意事项运算符重载不可以改变语法结构 运算符重载不可以改变操作数的个数 运算符重载不可以改变优先级 运算符重载不可以改变结合性继承的分类当一个类派生自基类该类的访问修饰符有三种类型 public, protected, private。通常情况下我们不使用protected和private继承而是采用public来继承。当不同类型的继承时其继承情况如下公有继承当一个类派生自public基类时基类的public成员也是派生类的public成员基类protected成员也是派生类的protected成员基类的private成员不能直接被派生类访问但是可以通过基类的public和protected成员来访问。 保护继承当一个类派生自protected的基类时基类的public和protected成员将成为派生类的protected成员。 私有继承当一个类派生自private的基类时基类的public和protected成员将成为派生类的private成员

相关新闻

2026年AI网站设计公司排名,品牌视觉定制企业盘点

2026年AI网站设计公司排名,品牌视觉定制企业盘点

2026年AI网站设计公司排名,品牌视觉定制企业盘点一、品牌视觉定制市场的需求变化2026年,企业官网已经从“有就行”升级到了“好看且好用”。据艾瑞咨询联合IDC发布的《2026年中国企业数字化建站行业白皮书》显示,2026年中国网站建设行业整体市…

2026/7/3 3:44:57 阅读更多 →
DeepSeek-V4定价逻辑:隐性成本优化与企业级AI落地新范式

DeepSeek-V4定价逻辑:隐性成本优化与企业级AI落地新范式

1. 这不是“买菜砍价”,而是大模型时代的价格认知重构DeepSeek-V4发布后,朋友圈和开发者群最常刷屏的一句话是:“这价格,是不是标错了?”——不是调侃,是真有人反复刷新官网页面确认。我第一时间拉了三台不…

2026/7/3 3:42:57 阅读更多 →
5分钟掌握VinXiangQi:高效实用的AI象棋连线工具终极指南

5分钟掌握VinXiangQi:高效实用的AI象棋连线工具终极指南

5分钟掌握VinXiangQi:高效实用的AI象棋连线工具终极指南 【免费下载链接】VinXiangQi Xiangqi syncing tool based on Yolov5 / 基于Yolov5的中国象棋连线工具 项目地址: https://gitcode.com/gh_mirrors/vi/VinXiangQi 你是否经常在网上对弈时遇到瓶颈&…

2026/7/3 3:42:56 阅读更多 →

最新新闻

青岛有哪些AI智能体落地案例?企业真实应用效果参考

青岛有哪些AI智能体落地案例?企业真实应用效果参考

随着人工智能从“概念狂欢”走向“价值落地”,2026年的企业数字化转型开始研究AI智能体(AI Agent)究竟能为业务带来多少降本增效的真实改变。 作为山东数字经济发展的核心城市,青岛在人工智能与实体经济融合方面一直走在前列。从灯…

2026/7/3 4:39:14 阅读更多 →
数字人口播怎么做获客?从内容生产到信任建立的一套思路(2026)

数字人口播怎么做获客?从内容生产到信任建立的一套思路(2026)

数字人口播怎么做获客?从内容生产到信任建立的一套思路(2026) “数字人口播怎么做获客”这个问题,表面看是在问视频形式,实际上问的是:如果不用真人反复出镜,数字人口播能不能真正承担获客内容的…

2026/7/3 4:37:13 阅读更多 →
吾爱大佬开发!全能格式转换工具,可以转换各种音视频文档!

吾爱大佬开发!全能格式转换工具,可以转换各种音视频文档!

前言 以前遇到格式不是兼容的问题确实比较麻烦,视频转格式、图片要压缩、文档要合并……,今天介绍这个工具-格式大师,主要解决的是视频、音频、图片、文档,四大类格式的互转以及压缩。 比如批量转格式、批量压缩,或者…

2026/7/3 4:35:13 阅读更多 →
借助冰淇淋车趣味学 Vim 操作,快速上手完整游戏攻略来啦!

借助冰淇淋车趣味学 Vim 操作,快速上手完整游戏攻略来啦!

借助冰淇淋车学习 Vim 操作 在这里,冰淇淋车就是你的光标,小镇则代表你的文本。你可以用这种有趣的方式学习 Vim 操作。快 玩完整游戏 试试演示版 ↓ 快速体验一关 你只需使用 h j k l 键,就能将冰淇淋车开到顾客面前。玩完整游戏 → 玩法说明…

2026/7/3 4:33:13 阅读更多 →
第94题 2026年国家级科研痛点 IGBT模块用高导热硅凝胶与灌封材料

第94题 2026年国家级科研痛点 IGBT模块用高导热硅凝胶与灌封材料

2026年国家级科研痛点 IGBT模块用高导热硅凝胶与灌封材料 痛点直陈 当前1200V至3300V新能源车及轨道交通用IGBT功率模块,封装材料陷入四个死结无法动弹:一是导热系数想做到2.5W/(mK)以上,胶水粘度就飙升,灌进微米级细缝必裹气泡&a…

2026/7/3 4:31:12 阅读更多 →
Django分页封装

Django分页封装

page_data.pyfrom django.utils.safestring import mark_safe from copy import deepcopy class PageData:def __init__(self,request,queryset,page_size1,page_num3,page_parampage):request:请求queryset:数据表的查询结果pagesize:一页显示多少条数据page_num:当前页面显示…

2026/7/3 4:29:12 阅读更多 →

日新闻

Nginx防御TLS重协商攻击实战:从原理到配置与监控

Nginx防御TLS重协商攻击实战:从原理到配置与监控

1. 项目概述:为什么TLS重协商攻击至今仍需警惕十多年前的CVE-2011-1473,一个关于TLS/SSL协议重协商机制的漏洞,现在提起来还有必要吗?很多运维和开发朋友可能会觉得,这都老掉牙了,现代服务器和客户端不都默…

2026/7/3 0:03:59 阅读更多 →
华为防火墙双通道远程管理实战:Web与SSH配置详解

华为防火墙双通道远程管理实战:Web与SSH配置详解

1. 项目概述:为什么需要双通道远程管理防火墙?在任何一个稍具规模的企业网络里,防火墙都是那个默默守护在边界的关键角色。作为网络工程师,我们不可能每次都跑到机房,插上console线去配置它。远程管理能力,…

2026/7/3 0:03:59 阅读更多 →
AD74413R与PIC18F65K40的高精度工业数据采集方案

AD74413R与PIC18F65K40的高精度工业数据采集方案

1. 项目概述:AD74413R与PIC18F65K40的协同工作在工业自动化和精密测量领域,同时实现高精度模数转换(ADC)和数模转换(DAC)功能是许多复杂系统的核心需求。AD74413R作为一款四通道可配置模拟输入/输出器件,与PIC18F65K40微控制器的组合&#xf…

2026/7/3 0:05:59 阅读更多 →

周新闻

月新闻