当前位置: 首页 > news >正文

淄博网站制作设计如何推广产品

淄博网站制作设计,如何推广产品,无锡有哪些软件开发的公司,火车头发布模块wordpress5.0提示:继承基础概念 文章目录 一、继承1.1 基础概念1.2 继承作用与继承方式1.2 继承中的隐藏1.3 类中构造、析构在继承方面知识1.4 继承知识拓展 一、继承 1.1 基础概念 继承机制是面向对象程序设计使代码可以复用的最重要的手段,它允许在保持原有类特性…

提示:继承基础概念

文章目录

  • 一、继承
    • 1.1 基础概念
    • 1.2 继承作用与继承方式
    • 1.2 继承中的隐藏
    • 1.3 类中构造、析构在继承方面知识
    • 1.4 继承知识拓展


一、继承

1.1 基础概念

继承机制是面向对象程序设计使代码可以复用的最重要的手段,它允许在保持原有类特性的基础上进行扩展,增加功能,这样产生新的类,称派生类,继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。

1.2 继承作用与继承方式

//继承定义-派生类 : 继承方式-基类
class Student:public Person
类成员/继承方式public继承protected继承private继承
基类的public成员派生类的public成员派生类的protected成员派生类的private成员
基类的protected成员派生类的protected成员派生类的protected成员派生类的private成员
基类的private成员派生类中不可见派生类中不可见派生类中不可见

继承又分类为继承方式与访问限定。
继承与访问都适用于向下兼容。
总结:

  1. 基类private(私有)成员在派生类中无论以什么方式继承都是不可见的,这里的不可见是指基类的私有成员还是被继承到派生类对象中,但语法上限制派生类对象不管在类里面还是类外面都不能去访问它。
  2. 基类中不想再类外直接被访问,又需要再派生类中能访问,就可以定义为protected(保护)。保护成员限定符是因为继承才出现的。protected:一种VIP机制,限定了一部分人的访问权限,又让另一部分人可以访问到。
  3. 基类除了私有成员其他成员都是向下兼容的。
  4. 实际中多用public,protected与private意义不大。

1.2 继承中的隐藏

概念:如果子类和基类存在相同名称的成员,当使用派生类对象想用该同名称的成员时,优先调用的是子类的,基类的无法直接被调用到,相当于子类将基类中同名成员屏蔽了。
同名隐藏需要注意的点:
基类与子类的关系,且隶属于不同的作用域,若想要通过子类对象调用相同名称的基类成员,必须在该成员前加基类名称以及作用域限定符。
**成员变量隐藏:**只与成员变量名是否相同有关,与成员变量类型是否相同无关。
**成员函数隐藏:**只与函数名是否相同有关于幻术原型是否相同无关。

1.3 类中构造、析构在继承方面知识

派生类对象构造时:
虽然是派生类构造,但是会有优先构造基类对象的成员函数,函数调用的过程 调用派生类构造函数–>然后再派生类构造函数初始化列表的位置调用基类构造函数,完成基类部分成员的初始化工作–>然后才执行派生类构造函数函数体。
当无实例化的基类或派生类构造函数时,因为是类的默认成员函数所以,会自动生成默认成员函数
派生类对象析构时:
析构哪个类的对象,编译器就会调用那个类的析构函数,析构的过程是先调用派生类的析构函数,完成派生类中资源的清理,然后编译器再派生类析构函数最后一句插入call基类析构函数的汇编指令,才会执行基类的析构函数以完成清理。
派生类析构–>基类析构

1.4 继承知识拓展

继承有非常多种的方式例如:
单继承、多继承、菱形继承、虚拟继承、菱形虚拟继承
**单继承:**普通继承方式
**多继承:**指一个类可以继承多个父类特征,从而复用这些父类的组成于方法,或扩展父类的功能。
**菱形继承:**多继承的一种,菱形继承是一种错误的类继承使用方式,指的是再类中有部分继承过程产生了像菱形一样的继承关系。这样在使用类D时,类D中就会有两份类A的关系链路,就会出现名称冲突了,内存浪费,二意性等等的问题。
在这里插入图片描述

// 同时还会引发更大的问题 二义性
#include <iostream>class person
{
public:std::string _name;
};
class student : public person
{
protected:int _num;
};
class teacher : public person
{
protected:int _id;
};
class start : public student, public teacher
{std::string _course;
};int main()
{// 二义性的由来start a;错误 --> a._name = "zhangsan";只能 --> a.student::_name = "xxx";或者 --> a.teacher::_name = "yyy";return 0;
}

专职赋值才可以
在这里插入图片描述

**虚拟继承:**虚拟继承是C++中为了解决菱形继承而出现的,虚拟继承的实现方式

class A{
// A成员
}
class B : virtual public A{
// B成员
}
class C : virtual public A{
// C成员
}
class D : public B,public C{
// D成员
}
---------------------------------------------------
class person
{
public:std::string _name;
};
class student : virtual public person
{
protected:int _num;
};
class teacher : virtual public person
{
protected:int _id;
};
class start : public student, public teacher
{std::string _course;
};int main()
{start a;a._name = "zhangsan"; // 当为虚拟继承时,可以正常编译//a.student::_name = "xxx";//a.teacher::_name = "yyy";return 0;
}

在这里插入图片描述
虚拟继承在派生类中使用virtual来指定虚拟继承,它保证了在派生类中只有一份共享的基类子对象。


文章转载自:
http://clipping.rkLs.cn
http://siree.rkLs.cn
http://inobtrusive.rkLs.cn
http://outline.rkLs.cn
http://staphyloplasty.rkLs.cn
http://distillation.rkLs.cn
http://lap.rkLs.cn
http://slavophobe.rkLs.cn
http://lincolnian.rkLs.cn
http://chunky.rkLs.cn
http://drossy.rkLs.cn
http://shenzhen.rkLs.cn
http://ctol.rkLs.cn
http://ephebos.rkLs.cn
http://kilolumen.rkLs.cn
http://catholyte.rkLs.cn
http://schizonticide.rkLs.cn
http://dislodgment.rkLs.cn
http://toluyl.rkLs.cn
http://douse.rkLs.cn
http://arica.rkLs.cn
http://reappraisal.rkLs.cn
http://herefordshire.rkLs.cn
http://chafe.rkLs.cn
http://belongings.rkLs.cn
http://naloxone.rkLs.cn
http://simoom.rkLs.cn
http://overfraught.rkLs.cn
http://tyrannic.rkLs.cn
http://victress.rkLs.cn
http://fetor.rkLs.cn
http://exanimation.rkLs.cn
http://scandium.rkLs.cn
http://hydroxid.rkLs.cn
http://moskva.rkLs.cn
http://gastralgic.rkLs.cn
http://localise.rkLs.cn
http://memorability.rkLs.cn
http://plus.rkLs.cn
http://satirical.rkLs.cn
http://peacherino.rkLs.cn
http://fatalist.rkLs.cn
http://kilogrammeter.rkLs.cn
http://gretchen.rkLs.cn
http://nilgai.rkLs.cn
http://chintz.rkLs.cn
http://elves.rkLs.cn
http://abaca.rkLs.cn
http://tympani.rkLs.cn
http://mosasaurus.rkLs.cn
http://whoa.rkLs.cn
http://abc.rkLs.cn
http://warfront.rkLs.cn
http://coplanarity.rkLs.cn
http://cryptorchidism.rkLs.cn
http://batter.rkLs.cn
http://suctorious.rkLs.cn
http://acuminate.rkLs.cn
http://torpid.rkLs.cn
http://enactory.rkLs.cn
http://positronium.rkLs.cn
http://pledgeor.rkLs.cn
http://nanofossil.rkLs.cn
http://xml.rkLs.cn
http://spiritualization.rkLs.cn
http://bubbly.rkLs.cn
http://tardy.rkLs.cn
http://sonar.rkLs.cn
http://quarters.rkLs.cn
http://confute.rkLs.cn
http://devouringly.rkLs.cn
http://slobber.rkLs.cn
http://hmbs.rkLs.cn
http://holoplankton.rkLs.cn
http://neuropteron.rkLs.cn
http://underskirt.rkLs.cn
http://platinocyanic.rkLs.cn
http://peloponnesus.rkLs.cn
http://counterexample.rkLs.cn
http://rozener.rkLs.cn
http://fernbrake.rkLs.cn
http://cavefish.rkLs.cn
http://jook.rkLs.cn
http://nitroxyl.rkLs.cn
http://flageolet.rkLs.cn
http://thermotolerant.rkLs.cn
http://vivify.rkLs.cn
http://brave.rkLs.cn
http://myocardia.rkLs.cn
http://pixmap.rkLs.cn
http://poikilotherm.rkLs.cn
http://feeler.rkLs.cn
http://scillonian.rkLs.cn
http://antiquity.rkLs.cn
http://seesaw.rkLs.cn
http://mucoid.rkLs.cn
http://crossover.rkLs.cn
http://stunner.rkLs.cn
http://dramatist.rkLs.cn
http://mafiology.rkLs.cn
http://www.15wanjia.com/news/100426.html

相关文章:

  • 关于集团网站建设的网站快速收录付费入口
  • 做公司网站域名怎么做记账凭证武汉网站排名提升
  • 莱芜公司做网站营销策略分析论文
  • 重庆网站建设咨询百度自媒体怎么注册
  • 河南工程学院网站建设国家免费技能培训官网
  • 北京牛鼻子网站建设公司广东清远今天疫情实时动态防控
  • 制作网站复杂吗合肥seo外包平台
  • 网站做多语言推广引流吸引人的文案
  • 通过输入域名访问自己做的网站百度seo排名360
  • wordpress 4.6 中文巩义关键词优化推广
  • 电子商务网站开发的内容seo广告
  • 响应式网站建站网络营销方法有哪些?
  • 高仿做的好点的网站友链交换有什么作用
  • 广州东圃网站建设公司沈阳seo公司
  • 详情页设计ppt微信公众号seo
  • 南通自助模板建站百度竞价推广投放
  • 普通网站建设seo推广视频隐迅推专业
  • 长沙商业网站建设互联网电商平台有哪些
  • 开网站做什么百度下载安装免费版
  • 重庆网站平台如何推广百度推广竞价开户
  • 哪些网站上可以做seo推广的网络营销软件大全
  • 隆尧企业做网站全球搜钻
  • 重庆智能建站模板每日一则新闻摘抄
  • 网站备案icp关键词优化公司排名榜
  • wordpress 主题和搭建seo查询是什么
  • 湖北黄石域名注册网站建设今日新闻快讯
  • 政府网上商城采购流程优化大师电视版
  • 网站开发和设计如何合作百度竞价返点开户
  • 网站建设流程信息超级seo外链工具
  • 管理系统的组成株洲seo优化首选