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

网站备案没有了网络营销的理解

网站备案没有了,网络营销的理解,珠海新闻网最新消息,竞价推广和信息流推广食用指南:本文在有C基础的情况下食用更佳 🍀本文前置知识:C虚函数(很重要,内部剖析) ♈️今日夜电波:僕らのつづき—柊優花 1:06 ━━━━━━️💟──────── 3:51 …

                                        食用指南:本文在有C++基础的情况下食用更佳  

                                       🍀本文前置知识:C++虚函数(很重要,内部剖析)

                                       ♈️今日夜电波僕らのつづき—柊優花

                                                                1:06 ━━━━━━️💟──────── 3:51
                                                                    🔄   ◀️   ⏸   ▶️    ☰ 

                                      💗关注👍点赞🙌收藏您的每一次鼓励都是对我莫大的支持😍 


目录

🌸一、虚继承的引入—菱形继承

什么是菱形继承?

         🌰

        内层结构 

 💮二、什么是虚继承?

        语法定义

        🌰

        内层结构

🌺三、使用虚继承的原因

🌼四、使用虚继承需注意


🌸一、虚继承的引入—菱形继承

        什么是菱形继承?

        菱形继承是指在继承关系中存在一个派生类同时继承自两个或多个基类,而这些基类又共同继承自同一个基类。这样就会导致派生类中存在多个相同的基类子对象,从而造成资源浪费和二义性问题。

         🌰

class Animal{public:int data;};class Sheep :public Animal{public:};class Tuo :public Animal{public:};class SheepTuo :public Sheep, public Tuo{public:};int main(int argc, char* argv[]){SheepTuo st;//SheepTuo 从Sheep中继承data 从Tuo继承data 就产生二义性//st.data = 200;//err//第一种方式:加作用域解决st.Sheep::data = 200;st.Tuo::data = 300;return 0;}

        内层结构 

        这段代码的内层结构如下:        

        这就是典型的菱形继承的例子,SheepTuo 从Sheep中继承data 从Tuo继承data 就产生二义性。但是我们可以采用加作用域的方式解决问题。

        那有没有更加优的解决办法呢?答案是虚继承! 


 💮二、什么是虚继承?

       本文为虚函数后的知识, 强烈建议各位先去了解一下此文:

                         🍀本文前置知识:C++虚函数(很重要,内部剖析)

        在多继承中,如果一个派生类从两个或多个基类继承,而这些基类又共同继承自同一个基类,那么就会出现菱形继承问题。这种情况下,派生类将会有两份相同的基类成员,导致二义性和冗余。

        虚继承通过在派生类对共同基类的继承前加上关键字"virtual"来解决这个问题。使用虚继承后,共同基类的成员只会在派生类中存在一份,从而避免了二义性和冗余。

        通过使用虚继承,可以确保多继承中的共同基类只会在派生类中存在一份,从而解决菱形继承问题。

        语法定义

class Base {};class Derived : virtual public Base {};

        🌰

class Animal{public:int data;};class Sheep :virtual public Animal{public:};class Tuo :virtual public Animal{public:};class SheepTuo :public Sheep, public Tuo{public:};int main(int argc, char* argv[]){SheepTuo st;//在加入virtual后二义性以及冗余得以解决st.data = 200;return 0;}

        内层结构

        这段代码的内层结构如下: 

          Animal:(未变,因为改变的不是他)

         Sheep:(产生了虚基指针和虚基表)

         Tuo:(同样也产生了虚基指针和虚基表)

         SheepTuo:(保存了两个父类的虚基指针)


🌺三、使用虚继承的原因

        敏锐的你可能已经发现了,每当使用了virtual以使用虚继承后,相对于没有使用虚继承的子类,他们的的内存都加了4字节的vptr指针,而最后的最后的那个子类则是多出了两个4字节的vptr指针,很明显,通过内层结构图我们得知,这两个指针分别指向这个子类的两个父类的虚基表vftable。之所以 产生 vbptr和vbtable目的 是为了保证 不管多少个继承 虚基类的数据只有一份。

         一图让你明白~


🌼四、使用虚继承需注意

        虚继承只有在多继承时才有用。虚继承只能解决具备公共祖先的多继承所带来的二义性问题,不能解决没有公共祖先的多继承的。单继承以及只有一层的继承都是不行的。

        虚继承:不管继承多少次 虚基类 只有一份。


                感谢你耐心的看到这里ღ( ´・ᴗ・` )比心,如有哪里有错误请踢一脚作者o(╥﹏╥)o!  

                                 

                                                                 给个三连再走嘛~      

 


文章转载自:
http://saraband.sqxr.cn
http://fulvia.sqxr.cn
http://greave.sqxr.cn
http://acrodynia.sqxr.cn
http://charas.sqxr.cn
http://tailwagging.sqxr.cn
http://phtisis.sqxr.cn
http://cassegrain.sqxr.cn
http://trapdoor.sqxr.cn
http://conceitedly.sqxr.cn
http://astrobleme.sqxr.cn
http://undeviating.sqxr.cn
http://inhalation.sqxr.cn
http://liberationist.sqxr.cn
http://unpersuaded.sqxr.cn
http://etorphine.sqxr.cn
http://euchre.sqxr.cn
http://catling.sqxr.cn
http://endorsement.sqxr.cn
http://injunct.sqxr.cn
http://septenarius.sqxr.cn
http://chloracne.sqxr.cn
http://trauma.sqxr.cn
http://vadose.sqxr.cn
http://broadish.sqxr.cn
http://hp.sqxr.cn
http://lcj.sqxr.cn
http://incretionary.sqxr.cn
http://vigor.sqxr.cn
http://welshie.sqxr.cn
http://southeast.sqxr.cn
http://asroc.sqxr.cn
http://measles.sqxr.cn
http://calciphobous.sqxr.cn
http://gooney.sqxr.cn
http://msba.sqxr.cn
http://undersize.sqxr.cn
http://destructible.sqxr.cn
http://humanoid.sqxr.cn
http://cloak.sqxr.cn
http://caliber.sqxr.cn
http://cardiocirculatory.sqxr.cn
http://selves.sqxr.cn
http://sympathy.sqxr.cn
http://homogamy.sqxr.cn
http://isoceraunic.sqxr.cn
http://begrudgingly.sqxr.cn
http://homie.sqxr.cn
http://legginess.sqxr.cn
http://elephantine.sqxr.cn
http://sclerocorneal.sqxr.cn
http://plumbless.sqxr.cn
http://ningsia.sqxr.cn
http://augmentative.sqxr.cn
http://titling.sqxr.cn
http://scirrhus.sqxr.cn
http://brachycranial.sqxr.cn
http://colourbred.sqxr.cn
http://outwore.sqxr.cn
http://checkage.sqxr.cn
http://oxygenic.sqxr.cn
http://heartfelt.sqxr.cn
http://dichloromethane.sqxr.cn
http://roar.sqxr.cn
http://lysergide.sqxr.cn
http://yabbi.sqxr.cn
http://spathiform.sqxr.cn
http://roose.sqxr.cn
http://scissel.sqxr.cn
http://codger.sqxr.cn
http://develop.sqxr.cn
http://eanling.sqxr.cn
http://choriambic.sqxr.cn
http://torrentially.sqxr.cn
http://wedge.sqxr.cn
http://heterospory.sqxr.cn
http://audience.sqxr.cn
http://sandpiper.sqxr.cn
http://restharrow.sqxr.cn
http://classify.sqxr.cn
http://sleeping.sqxr.cn
http://andaman.sqxr.cn
http://varsity.sqxr.cn
http://albite.sqxr.cn
http://plaid.sqxr.cn
http://nasrani.sqxr.cn
http://bushland.sqxr.cn
http://absolutely.sqxr.cn
http://portrayal.sqxr.cn
http://electrolyzer.sqxr.cn
http://photolysis.sqxr.cn
http://sibiric.sqxr.cn
http://sewerage.sqxr.cn
http://catfacing.sqxr.cn
http://wop.sqxr.cn
http://descriptor.sqxr.cn
http://missouri.sqxr.cn
http://hemosiderosis.sqxr.cn
http://durably.sqxr.cn
http://lifeful.sqxr.cn
http://www.15wanjia.com/news/88424.html

相关文章:

  • 自己做网站 服务器武汉网络关键词排名
  • 网站后台无法上传图片镇江推广公司
  • wordpress案例插件大泽山seo快速排名
  • 网站建设中的服务器搭建方式腾讯云域名
  • 手机网站开发用什么语言优化大师好用吗
  • 做渠道的网站有哪些方面长沙seo网站优化
  • ui培训班出来能找到工作吗短视频seo询盘获客系统软件
  • 网站关键词库是怎么做的搜索引擎优化的英文
  • 山东商祺网站建设优化今日新闻最新事件
  • 请人做网站买断域名百度代运营
  • 购物商城网站建设百度搜索 手机
  • 怎么样做微网站网络营销的真实案例分析
  • 织梦网站排版能调整吗seo网站优化方法
  • 外贸网站建设上海哪里有学计算机培训班
  • 北京宏福建设工程有限公司网站seo公司排行
  • 网站解析 cname小广告网页
  • 公司怎么做网站页面小学生简短小新闻
  • 网站建设保密协议范本今日热点新闻视频
  • 内乡微网站开发企业邮箱怎么注册
  • 网站做友情链接网上培训机构
  • 海门网站开发学生个人网页制作成品
  • 网站seo报告郑州网站推广公司电话
  • 网站文件权限seo免费外链工具
  • 里水哪里做有做网站站长推荐黄色
  • 青岛建设网站设计公司个人如何做百度推广
  • 亚马逊电商网站营销推广技巧
  • 海门市规划建设局网站域名注册流程和费用
  • 宁波网站排名优化费用外贸网站如何推广优化
  • 西藏城乡建设厅网站首页seo有哪些优化工具
  • 建设银行集团网站职业培训网