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

网站开发项目时序图介绍旅游美食的网站模板

网站开发项目时序图,介绍旅游美食的网站模板,google怎么做网站推广,点评网页设计作业条款36#xff1a;绝不重新定义继承而来的non-virtual函数non-virtual函数执行的是静态绑定#xff0c;在编译器就已经决定#xff0c;因此对象对用的函数只和指针的类型有关#xff0c;而与指针所指的对象无关#xff1b;记住non-virtual函数的性质#xff1a;不变性凌驾…条款36绝不重新定义继承而来的non-virtual函数non-virtual函数执行的是静态绑定在编译器就已经决定因此对象对用的函数只和指针的类型有关而与指针所指的对象无关记住non-virtual函数的性质不变性凌驾于特异性 条款37绝不重新定义继承而来的缺省参数值静态类型是指在程序中声明时使用的类型动态类型是指目前所指对象的类型动态类型变现为一个对象将会有什么样的行为non-virtual和参数缺省值执行的是静态绑定virtual执行的是动态绑定,代码分析 class shape{ public:enum shapecolor { red, green, blue };virtual void draw(shapecolor colorred) const0; }; class rectangle:public shape{ public:virtual void draw(shapecolor colorgreen) const;//糟糕的操作... } class circlepublic shape{ public:virtual void draw(shapecolor color)const;... }; 调用 shape *prnew rectangle;pr-draw( );//执行的代码为rectangle::draw(shape::red)://相当于shape执行缺省rectangle执行virtual函数一人一半神奇的操作 C这样设计的原因运行期效率如果缺省值是动态绑定编译器就必须用某种方法在运行期为virtual函数决定适当的参数缺省值这比目前实现的在编译期决定的机制更慢更加复杂 条款38通过复合塑模出has-a或者根据某物实现出复合是类型之间的一种关系当某种类型的对象内含它种类型的对象就是这种关系复合有两种意义复合意味着has-a(有一个或is-implemented-in-terms-of(根据某物实现出)如何区分is-a(是一种和is-implemented-in-terms-of根据某物实现出这两种关系可以通过public继承中D继承BD对象也是B对象反之B对象不是D对象来判断 条款39明智而审慎地使用private继承private继承意味着implemented-in-terms-of复合它只有实现部分被继承接口部分省略private继承纯粹是一种实现技术它在软件设计层面上没有意义其意义只及于软件实现层面代码分析class person {...};class student:private person{ . . .};void eat(const personp);person p;    student s;      eat(p);eat(s);//编译不通过 原因1private继承中编译器不会自动将一个derived class对象转换为一个base class对象2private继承而来的所有成员在derived  class中都会变成private属性纵使它们在base class中原本是public或者protected;   尽可能的多用复合必要的时候才使用private继承protected成员和virtual函数牵涉进来的时候或者继承一个empty class时候可以采用private继承需求定义一个类B继承一个类B_B使得这个类的派生D不能调用B_B的成员函数 设计1private继承 class B_B{                                           class D:private B_B{ public                                                 private: explicit B_B(int tickfrency);                              virtual void ontick( ) const;virtual void ontick( )const; };                                                        }; 设计2继承复合 class D{ private:class widgettimer:public B_B{public:   virtual void ontick( )const;...};widgwttimer timer; } 在D内声明一个嵌套式private class后者以public继承B_B并重新定义ontick,然后放这个类型在D对象内 选择方案2不选择方案1的原因1想阻止D的derived class重新定义ontick函数2降低D编译的依存性empty class:没有non_static成员变量没有virtual函数没有virtual base classempty class数据大小并不是零C规定凡是独立对象都必须有非零大小这个约束不针对derived class 中的base class成分它们是非独立的因此一个empty class 大小为1C规定安插一个char类型到空对象中在继承empty class中如果选择private继承EBO,empty base optimization继承空类可能造成empty base的最优化
http://www.zqtcl.cn/news/625431/

相关文章:

  • 网站 建设实验小结做淘宝客优惠券网站还是APP赚钱
  • 付银行的网站建设费的会计科目网站建设前端
  • 做网站题材海南网站建设软件
  • 门户网站建设 考核从零开始学做网站cdsn
  • 百胜网站建设秀屿区建设局网站
  • 公司招聘做哪家网站建筑网站开发
  • 网站建设文案详情一条龙平台
  • 四站合一网站建设公司权威的手机网站制作
  • 自主网站建站上海金瑞建设集团网站
  • 阿里云网站建设方案书中山市公司企业网站的选择
  • 网站建设管理工作制度知名网站建设加盟合作
  • 网站定制公司推荐wordpress 插件 封面
  • 企业手机网站建设行情做外贸哪个网站比较好2017
  • 专业网站制作电话软件推广
  • 免费建站系统博客海外网站搭建
  • 网站建设与制作视频教学站酷网图片
  • 网站开发还有哪些万维网申请网站域名
  • 做网站费用上海判断网站做的好坏
  • 有了域名和空间怎么建网站哪些公司需要网页电商设计师
  • 网站开站备案深圳创业补贴10万
  • 圆通我做网站拉上海建站系统
  • 对于做网站有什么要求新闻发布会视频
  • 网站建设专业就业前景成都房产信息网 官网
  • 西宁网站建设公司排行网站查询域名ip解析
  • 柳州企业网站开发公司如何做网站首页图
  • 刷赞网站空间免费深圳网站制作公司排名
  • 网站内部优化策略获取网站的路径
  • 网站群 优点今天西安最新通告
  • 惠济免费网站建设设计制作的广告公司
  • 做一个网站建设装潢设计属于什么专业