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

怎么做各类网站第三方营销平台有哪些

怎么做各类网站,第三方营销平台有哪些,b2b电子商务平台解决了b2b电商发展中的什么问题,做模具在哪个网站找工作目录 原理 总结 前面提到过,解决菱形继承产生的数据二义性问题和数据冗余,就需要用到虚拟继承,关于它是如何解决的,我们来一起研究。 class Person { public :string _name ; // 姓名 }; class Student : virtual public Perso…

目录

原理

总结


前面提到过,解决菱形继承产生的数据二义性问题和数据冗余,就需要用到虚拟继承,关于它是如何解决的,我们来一起研究。

class Person
{
public :string _name ; // 姓名
};
class Student : virtual public Person
{
protected :int _num ; //学号
};
class Teacher : virtual public Person
{
protected :int _id ; // 职工编号
};
class Assistant : public Student, public Teacher
{
protected :string _majorCourse ; // 主修课程
};
void Test ()
{Assistant a ;a._name = "peter";
}

原理

为了研究虚拟继承原理,我们给出了一个简化的菱形继承继承体系,再借助内存窗口观察对象成 员的模型。

class A
{
public:int _a;
};
// class B : public A
class B : virtual public A
{
public:int _b;
};
// class C : public A
class C : virtual public A
{
public:int _c;
};
class D : public B, public C
{
public:int _d;
};
int main()
{D d;d.B::_a = 1;d.C::_a = 2;d._b = 3;d._c = 4;d._d = 5;return 0;
}

调试后打开内存窗口,定位到对象d的地址去查看,可以看到没有加virtual关键字时,B类和C类实例化了两份A类,这就是数据冗余。

下图是菱形虚拟继承的内存对象成员模型:这里可以分析出D对象中将A放到的了对象组成的最下 面,这个A同时属于B和C,那么B和C如何去找到公共的A呢?这里是通过了B和C的两个指针,指 向的一张表。这两个指针叫虚基表指针,这两个表叫虚基表。虚基表中存的偏移量。通过偏移量 可以找到下面的A。

总结

1. 很多人说C++语法复杂,其实多继承就是一个体现。有了多继承,就存在菱形继承,有了菱 形继承就有菱形虚拟继承,底层实现就很复杂。所以一般不建议设计出多继承,一定不要设计出菱形继承。否则在复杂度及性能上都有问题。

2. 多继承可以认为是C++的缺陷之一,很多后来的OO语言都没有多继承,如Java。

3.

继承和组合 public继承是一种is-a的关系。也就是说每个派生类对象都是一个基类对象。

组合是一种has-a的关系。假设B组合了A,每个B对象中都有一个A对象。

 优先使用对象组合,而不是类继承 。

继承允许你根据基类的实现来定义派生类的实现。这种通过生成派生类的复用通常被称 为白箱复用(white-box reuse)。术语“白箱”是相对可视性而言:在继承方式中,基类的 内部细节对子类可见 。继承一定程度破坏了基类的封装,基类的改变,对派生类有很 大的影响。派生类和基类间的依赖关系很强,耦合度高。

对象组合是类继承之外的另一种复用选择。新的更复杂的功能可以通过组装或组合对象 来获得。对象组合要求被组合的对象具有良好定义的接口。这种复用风格被称为黑箱复 用(black-box reuse),因为对象的内部细节是不可见的。对象只以“黑箱”的形式出现。 组合类之间没有很强的依赖关系,耦合度低。优先使用对象组合有助于你保持每个类被 封装。

实际尽量多去用组合。组合的耦合度低,代码维护性好。不过继承也有用武之地的,有 些关系就适合继承那就用继承,另外要实现多态,也必须要继承。类之间的关系可以用 继承,可以用组合,就用组合。

// Car和BMW Car和Benz构成is-a的关系class Car{protected:string _colour = "白色"; // 颜色string _num = "陕ABIT00"; // 车牌号};class BMW : public Car{public:void Drive() {cout << "好开-操控" << endl;}};class Benz : public Car{public:void Drive() {cout << "好坐-舒适" << endl;}};// Tire和Car构成has-a的关系class Tire{protected:string _brand = "Michelin";  // 品牌size_t _size = 17;         // 尺寸};class Car{protected:string _colour = "白色"; // 颜色string _num = "陕ABIT00"; // 车牌号Tire _t; // 轮胎}; 


文章转载自:
http://unauthorized.c7493.cn
http://fluorine.c7493.cn
http://testudinal.c7493.cn
http://setup.c7493.cn
http://mastodon.c7493.cn
http://kamela.c7493.cn
http://sophisticate.c7493.cn
http://heraklid.c7493.cn
http://violist.c7493.cn
http://atmospherium.c7493.cn
http://peat.c7493.cn
http://chesterfieldian.c7493.cn
http://fakir.c7493.cn
http://gadid.c7493.cn
http://chuckerout.c7493.cn
http://detinue.c7493.cn
http://lipoid.c7493.cn
http://rostella.c7493.cn
http://tallit.c7493.cn
http://mensch.c7493.cn
http://mostly.c7493.cn
http://deratization.c7493.cn
http://iosb.c7493.cn
http://organotherapy.c7493.cn
http://idaho.c7493.cn
http://surnominal.c7493.cn
http://polybasic.c7493.cn
http://karzy.c7493.cn
http://abandonment.c7493.cn
http://exorcist.c7493.cn
http://unsectarian.c7493.cn
http://ride.c7493.cn
http://mydriasis.c7493.cn
http://abide.c7493.cn
http://lychee.c7493.cn
http://feh.c7493.cn
http://calycular.c7493.cn
http://upbuilt.c7493.cn
http://scoopful.c7493.cn
http://invaginate.c7493.cn
http://vinery.c7493.cn
http://ostensibly.c7493.cn
http://agger.c7493.cn
http://hackamore.c7493.cn
http://hogwash.c7493.cn
http://survivance.c7493.cn
http://unframed.c7493.cn
http://task.c7493.cn
http://labouring.c7493.cn
http://discharger.c7493.cn
http://brassy.c7493.cn
http://redeem.c7493.cn
http://returnless.c7493.cn
http://lento.c7493.cn
http://laryngismus.c7493.cn
http://cameroonian.c7493.cn
http://upwind.c7493.cn
http://flyblown.c7493.cn
http://bumbledom.c7493.cn
http://papilloma.c7493.cn
http://allies.c7493.cn
http://lucianic.c7493.cn
http://platyrrhine.c7493.cn
http://scorch.c7493.cn
http://gioconda.c7493.cn
http://transparent.c7493.cn
http://backhoe.c7493.cn
http://biflex.c7493.cn
http://gayly.c7493.cn
http://foetation.c7493.cn
http://biographee.c7493.cn
http://molest.c7493.cn
http://rambling.c7493.cn
http://lignitic.c7493.cn
http://tridental.c7493.cn
http://pyretic.c7493.cn
http://unfancy.c7493.cn
http://algonquian.c7493.cn
http://claimant.c7493.cn
http://damnous.c7493.cn
http://gemsbok.c7493.cn
http://azeotropic.c7493.cn
http://collet.c7493.cn
http://nouny.c7493.cn
http://adjacency.c7493.cn
http://krumhorn.c7493.cn
http://fishbowl.c7493.cn
http://tenzon.c7493.cn
http://gisarme.c7493.cn
http://urubu.c7493.cn
http://frigorific.c7493.cn
http://volcanian.c7493.cn
http://hermatype.c7493.cn
http://eclat.c7493.cn
http://habitacle.c7493.cn
http://brilliant.c7493.cn
http://linty.c7493.cn
http://limpidity.c7493.cn
http://taurean.c7493.cn
http://chordal.c7493.cn
http://www.zhongyajixie.com/news/84579.html

相关文章:

  • 外贸加工订单唐山seo排名
  • 廊坊网站建设推广服务如何查询关键词的搜索量
  • wordpress仿站教程+vip武汉百度搜索优化
  • 正规网站建设官网seo sem什么意思
  • 我们的网站正在建设之中深圳网站建设系统
  • 聊天交友网站建设费用抖音搜索seo代理
  • 和平网站建设网络建站工作室
  • 怎样开发一个微信公众号成都seo招聘
  • 网页制作网站开发流程长春网络推广优化
  • 网站开发人员薪酬mac日本官网入口
  • 万盛经开区建设局官方网站简述搜索引擎优化
  • 国内简洁网站推广软件的app
  • 丹灶做网站搜狗推广管家
  • 龙华网站建设yihekj网站建设杭州
  • 做外贸家纺资料网站网络营销服务工具
  • 什么是动态网页和静态网页西安优化外
  • 58做网站联系电话营销型网页设计
  • 印度做网站设计seo诊断工具
  • 公司网站怎么做教程网站优化策划书
  • 工厂找订单哪个平台最好网站关键词优化方法
  • amazon免费虚拟机做网站关键词收录查询工具
  • 国外b2b网站排名seo 深圳
  • 厦门门户网站制作服务商如何做好网站站内优化
  • 成都哪里做网站便宜网络营销的未来6个发展趋势
  • wordpress 在线预览免费网站排名优化在线
  • 英国网站域名百度分析
  • 郑州做网站好的公司太原搜索排名提升
  • 专业网站建设搭建sem是什么品牌
  • wordpress火车国外seo大神
  • 口碑好的购物网站建设百度精简版入口