汽车o2o网站建设网站幻灯片js代码

news/2025/9/24 1:47:47/文章来源:
汽车o2o网站建设,网站幻灯片js代码,新网站怎么运营,西安网站建设 乐云seo在派生类中#xff0c;成员可以按访问属性分为以下四种#xff1a; #xff08;1#xff09;不可访问成员。这是从基类私有成员继承下来的#xff0c;派生类或是建立派生类对象的模块都无法访问到它们#xff0c;如果从派生类继续派生新类#xff0c;也是无法访问的。 成员可以按访问属性分为以下四种 1不可访问成员。这是从基类私有成员继承下来的派生类或是建立派生类对象的模块都无法访问到它们如果从派生类继续派生新类也是无法访问的。 2私有成员。包括从基类继承过来成员以及新增的成员在派生类内部可以访问但是建立派生类对象的模块无法访问继续派生就变成了新的派生类中的不可访问成员。 3保护成员。可能是新增也可能是从基类继承过来的派生类内部成员可以访问建立派生类对象的模块无法访问进一步派生在新的派生类中可能成为私有成员或者保护成员。 4公有成员。派生类、建立派生类对象的模块都可以访问继续派生可能是新派生类中的私有或者保护成员。 在对派生类的访问中我们只能访问一个能够唯一标识的可见成员。如果通过某一个表达式能引用的成员不只一个称为有二义性。 1.作用域分辨符 作用域分辨符就是我们常见的“::”它可以用来限定要访问的成员所在的类的名称。一般的使用形式为 类名::成员名//数据成员 类名::成员名(参数表)//函数成员2.作用域分辨符在类族层次结构中唯一标识成员 对于在不同的作用域声明的标识符可见性原则是如果存在两个或多个具有包含关系的作用域外层声明了一个标识符而内层没有再次声明同名标识符那么外层标识符在内层仍然可见如果在内层声明了同名标识符则外层标识符在内层不可见这时称为内层标识符隐藏了外层同名标识符这种现象叫做隐藏规则。 在类的派生层次结构中基类的成员和派生类新增的成员都具有作用域。二者的作用范围不同是相互包含的两个层派生类在内层。这时如果派生类声明了一个和某个基类成员同名的新成员派生类的新成员隐藏了外层基类中的同名成员直接使用成员名只能访问到派生类的成员。如果派生类中声明了与基类成员函数同名的新函数即使函数的参数表不同从基类继承的同名函数的所有重载形式也都会被隐藏。。如果要访问隐藏的成员就需要使用作用域分辨符和基类名来限定。 对于多继承情况首先考虑各个基类之间有没有继承关系同时也没有共同基类的情况。最经典的情况就是所有基类都没有上级基类。如果某派生类的多个基类拥有同名成员同时派生类又新增这样的同名成员在这种情况下派生类成员将隐藏所有基类的同名成员。 这时使用“对象名.成员名”或者“对象指针-成员名”的方式可以唯一标识和访问派生类的新增成员基类的同名成员也可以使用基类名和作用域分辨符访问。但是如果派生类没有声明同名成员使用“对象名.成员名”或者“对象指针-成员名”的方式就无法唯一标识成员。这时从不同基类继承过来的成员具有相同的名称同时具有相同的作用域这时就必须通过基类名和作用域分辨符来标识成员。 【例】定义基类B1B2由基类B1B2共同公有派生产生新类D。两个基类中都声明了数据成员v和函数fun在派生类中新增同名的两个成员。这时的D类中共含有6个成员而这6个成员只有两个名字。 #includeiostream using namespace std;class B1//定义基类B1 { public:int v;void fun(){cout 基类B1的成员 endl;} };class B2//定义基类B2 { public:int v;void fun(){cout 基类B2的成员 endl;} };class D :public B1, public B2//定义派生类D { public:int v;//同名数据成员void fun()//同名函数成员{cout 派生类D的成员 endl;} };int main() {D d;D* p d;d.v 1;//对象名.成员名标识d.fun();//D类对象d访问D类成员函数fund.B1::v 2;//作用域分辨符标识d.B1::fun();//D类对象d访问B1类成员函数funp-B2::v 3;//作用域分辨符标识p-B2::fun();//D类对象d访问B2类成员函数funreturn 0; }在主函数中创建了一个派生类D的对象d根据隐藏规则如果通过成员名称来访问该类的成员就只能访问到派生类新增的两个成员从基类继承过来的成员由于外层作用域被隐藏。这时就必须使用类名和作用域分辨符来访问从基类继承来的成员。 主函数中后面两组语句 d.B1::v 2;//作用域分辨符标识d.B1::fun();//D类对象d访问B1类成员函数funp-B2::v 3;//作用域分辨符标识p-B2::fun();//D类对象d访问B2类成员函数fun就是分别访问由基类B1、B2继承来的成员。通过作用域分辨符明确地唯一标识了派生类中由基类所继承来的成员达到了访问的目的解决了成员被隐藏的问题。 如果在上例中派生类没有声明与基类同名的成员那么采用“对象名.成员名”就无法访问到任何成员来自B1、B2 类的同名成员具有相同的作用域系统根本无法进行唯一标识这时就需要使用作用域分辨符。将上例中的派生类改为如下形式 class D :public B1, public B2//定义派生类D {};程序其余部分不改变主函数中“对象名.成员名”的访问方式就会出错 如果希望 d.v 1;和d.fun();的用法不产生二义性可以使用using关键字加以澄清。例如 class D :public B1, public B2//定义派生类D { public:using B1::v;using B1::fun; };这样主函数中的 d.v 1;和d.fun();都可以明确表示对B1中的相关成员的引用了。 using的一般功能是将一个作用域中的名字引入到另一个作用域中它还有一个非常有用的用法将using用于基类中的函数名这样派生类中如果定义同名但参数不同的函数基类的函数不会被隐藏两个重载函数将会并存在派生类的作用域中。例如 #includeiostream using namespace std;class B1//定义基类B1 { public:int v;void fun(){cout 基类B1的成员 endl;} };class D2 :public B1 { public:using B1::fun;void fun(int i){cout i endl;} };int main() {D2 dd;dd.fun();dd.fun(5);return 0; }运行结果 这时使用D2的对象既可以直接调用基类B1中的无参数的fun又可以直接调用派生类D2中带int型参数的fun函数。 如果某个派生类的部分或全部直接基类是从另一个共同的基类派生而来的在这些直接基类中从上一级基类继承来的成员就拥有相同的名称因此派生类中也就会产生同名的现象对这种类型的同名成员也要使用作用域分辨符来唯一标识而且必须用直接基类来进行限定。 【例】有一个基类B0声明了数据成员v0和函数成员fun0由B0公有派生了类B1和类B2在以B1B2作为基类共同公有派生了新类D。在派生类中不再添加新的同名成员这时的D类就含有通过B1B2继承来的基类B0中的同名成员v0和fun0。 class B0 { public:int v0;void fun0(){cout 基类B0的成员 endl;} }; class B1 :public B0 { public:int v1;}; class B2 :public B0 { public:int v2; }; class D :public B1, public B2 { public:int v;void fun(){cout 基类D的成员 endl;} };int main() {D d;d.B1::v0 2;d.B1::fun0();d.B2::v0 3;d.B2::fun0();return 0; }运行结果 分析 在主函数中创建了派生类D的对象d如果只通过成员名来访问该类的成员v0和fun0系统无法唯一确定要引用的成员。这时必须采用作用域分辨符通过直接基类名来确定要访问的从基类继承来的成员。 这种情况下派生类的对象在内存中就同时拥有成员v0的两份同名副本。对于数据成员来讲虽然两个v0可以分别通过B1和B2调用B0的构造函数进行初始化可以存放不同的数值也可以使用作用域分辨符通过直接基类名限定来分别进行访问但是很多情况下我们只需要一个数据副本。同一成员的多份副本增加了内存的开销。C中提供了虚基类技术解决这一问题。 【注意】上例中其实B0类的函数成员fun0()的代码始终只有一个副本之所以调用fun0函数时仍然需要用基类名B1和B2加以限定是因为调用非静态成员函数总是针对特定的对象执行函数时需要将指向该类的一个对象的指针作为隐含的参数传递给被调函数来初始化this指针。上例中D类的对象中存在两个B0类的子对象因此调用fun0函数时需要使用B1和B2加以限定这样才能明确针对哪个B0对象调用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/914519.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代做网站公司有哪些网站建设中 目录是什么

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

买外贸衣服的网站wordpress 非插件分页

转载自 史上最全MySQL 大表优化方案(长文) 当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化: 一、单表优化 除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分&…

提供网站设计方案公司南昌手机网站制作

从今天开始,我将带你一起学习 MySQL 的性能调优。MySQL 数据库是互联网公司使用最为频繁的数据库之一,不仅仅因为它开源免费,MySQL 卓越的性能、稳定的服务以及活跃的社区都成就了它的核心竞争力。 我们知道,应用服务与数据库的交…

私人做网站图片外国网站翻墙怎么做

一、什么是代码片段当在Xcode中输入dowhile并回车后,Xcode会出现下图所示的提示代码:这就是代码片段,目的是使程序员以最快的速度输入常用的代码片段,提高编程效率。该功能是从Xcode4开始引入的。在Xcode中的位置如下图所示&#…

企业网站 html模板下载网站建设与维护心得体会

用过Java的都知道SSH框架,特别对于数据库开发,Java领域有无数的ORM框架,供数据持久层调用,如Hibernate,iBatis(现在改名叫MyBatis),TopLink,JDO,JPA……非常方便实用。用过C#的同学们…

设计公司网站域名郑州免费网站建设哪家好

什么是SQLite? SQLite是安卓中的轻量级内置数据库,不需要设置用户名和密码就可以使用。资源占用较少,运算速度也比较快。 SQLite支持:null(空)、integer(整形)、real(小…

网站课程建设申报书wordpress购买阅读

✨个人主页: 北 海 🎉所属专栏: MySQL 学习 🎃操作环境: CentOS 7.6 阿里云远程服务器 🎁软件版本: MySQL 5.7.44 文章目录 1.创建数据库2.数据库中的编码问题2.1.字符集与校验集2.3.支持的字符…

网站导航栏是什么上海商城

近日,汇智知了堂在四川农业大学举办的为期五天的校内综合项目实训活动已圆满结束。本次实训聚焦Python爬虫技术,旨在提升学生的编程能力和数据分析能力,为学生未来的职业发展打下坚实的基础。 作为一家在IT教育行业享有盛誉的机构&#xff…

做网站 业务流程图超融合系统

Java 堆从 GC 的角度还可以细分为: 新生代(Eden 区、From Survivor 区和 To Survivor 区)和老年代。 1. 新生代 是用来存放新生的对象。一般占据堆的 1/3 空间。由于频繁创建对象,所以新生代会频繁触发MinorGC 进行垃圾回收。新生代又分为 Eden 区、ServivorFrom、…

家纺网站设计wordpress 外链 图库

一、什么是上市公司股权收购线? 上市公司股权收购线是指在进行上市公司股权收购时,根据相关法律法规和规定,收购方需要遵守的特定比例或条件。这些比例或条件通常用于确定收购方在收购过程中需要采取的行动或满足的要求。 其中,…

重庆推广网站的方法新东方厨师学费价目表

Joystick Pack这种重力带惯性不利于正常开发。决定进行优化。有一种万事俱备只欠东风的感觉。 源代码如下: 1.在脚本中找到轮盘所输出的方向值 2.把方向的改变值加到鸣人模型身上。 2.1控制器脚本中添加model变量 2.2在unity中赋值 2.3代码中修改位置 using Syst…

网站右侧浮动导航世界摄影网站

硬质合金刀片牌号表示方法如下图:yw1硬质合金刀片a320钨钛钴类硬质合金主要成分是碳化钨、碳化钛(TiC)及钴。其牌号由“YT”(“硬、钛”两字汉语拼音字首)和碳化钛平均含量组成。例如,YT15,表示平均碳化钛(TiC)15%,其余为碳化钨和…

制作网站要多久智慧团建pc端注册入口

# 1 赛题 D 题 量子计算在矿山设备配置及运营中的建模应用 随着智能技术的发展,智慧矿山的概念越来越受到重视。越来越多的 设备供应商正在向智慧矿山整体解决方案供应商转型,是否具备提供整体 解决方案的能力,也逐步成为众多矿山设备企业的核…

电商网站建设的意义适合穷人翻身的10个行业

1 范围 本文件描述了碳纤维增强复合材料加速吸湿和过饱和调节的方法,该方法在温度高于100 ℃但低 于试验材料玻璃化转变温度(T) 的饱和水蒸气密封压力容器中进行。 本文件适用于玻璃化转变温度大于150℃的热固性碳纤维增强复合材料。热塑性碳纤维增强复合 材料也…

网站开发和网站制作的区别福建省建设职业管理中心网站

什么是测试驱动开发? 软件开发团队通常会编写自动化测试套件来防止回归。这些测试通常是在编写应用程序功能代码之后编写的。我们将采用另一种方法:在实现应用程序代码之前编写测试。这称为测试驱动开发 (TDD)。 为什么要应用 TDD?通过在实…

台州市建设规划局网站6天津建设企业网站

现象: 宿主机和docker内部能互相访问非常正常,但docker内部访问外部网络内网其中一个网段172.18.0.x则无法访问。 排查 由于docker是精简过的系统,需另外安装网络相关命令 首先更新apt-get,否则在apt-get install 命令时会报E:…

抖音推广平台有哪些网站未备案做seo会被k吗

客户背景 电子科技大学(以下简称“电子科大”),位于四川省成都市,是一所历史悠久、实力雄厚的综合性工业大学。作为我国重点建设的双一流高校,电子科大在国内外均享有盛誉,其学科涵盖了理、工、管、文等多…

国外互联网科技网站网站的背景图怎么做

题目描述 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是无…

建立一个网站的技术解决方案英德住房和城乡建设部网站

文章目录 一、Windows安全配置简介二、账户策略2.1 密码策略2.2 账户锁定策略 三、本地策略3.1 用户权限分配 四、安全设置4.1 账户4.2 审核4.3 设备4.4交互式登录4.5 网络访问4.6 网络安全4.7 用户账户控制4.8 防火墙配置 五、高级审核策略设置5.1 账户登录5.2 账户管理5.3 对…

长沙企业网站建设较好的公司电商网站开发

原标题:STM32之ADC步骤小技巧(英文) 看到标题,别吓到哈、并不是要用英文写、至于原因是什么、请往下看: 言归正传:STM32的ADC模块的特色 1、1MHz转换速率、12位转换结果(12位、记住这个12位哈、…