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

做网站选择哪家运营商装修公司网站模板

做网站选择哪家运营商,装修公司网站模板,有没有什么好的网站,在什么网站可以自承包活来做目录 一#xff0c;继承与友元二#xff0c;继承与静态成员三#xff0c;复杂的菱形继承及菱形虚拟继承四#xff0c;继承的总结和反思 点击跳转上一篇文章#xff1a; 【C】#xff1a;继承(定义赋值兼容转换作用域派生类的默认成员函数… 目录 一继承与友元二继承与静态成员三复杂的菱形继承及菱形虚拟继承四继承的总结和反思 点击跳转上一篇文章 【C】继承(定义赋值兼容转换作用域派生类的默认成员函数) 一继承与友元 友元关系不能继承也就是说基类友元不能访问子类私有和保护成员 。 二继承与静态成员 基类定义了static静态成员则整个继承体系里面只有一个这样的成员。无论派生出多少个子类都只有一个static成员实例 。 class Person { public:Person() { _count; } protected:string _name; // 姓名 public:static int _count; // 统计人的个数。 };int Person::_count 0;class Student : public Person { protected:int _stuNum; // 学号 };int main() {Person p;Student s;cout Person::_count endl;cout Student::_count endl;return 0; }在上述代码中此时Student和Person里面的_count是同一个静态变量_count存在静态区,不是单独的存在各个对象里是属于整个继承体系了。 三复杂的菱形继承及菱形虚拟继承 1.单继承一个子类只有一个直接父类时称这个继承关系为单继承。 2.多继承一个子类有两个或以上直接父类时称这个继承关系为多继承。 3.菱形继承菱形继承是多继承的一种特殊情况。 菱形继承的问题从下面的对象成员模型构造可以看出菱形继承有数据冗余和二义性的问题。 class Person { public:string _name; // 姓名int _id;int _tel;string _adress; };class Student : public Person { protected:int _num; //学号 };class Teacher : public Person { protected:int _id; // 职工编号 };class Assistant : public Student, public Teacher { protected:string _majorCourse; // 主修课程 };int main() {//数据冗余和二义性Assistant a;//a._name 小李;//a._name 李老师;//1.指定类域a.Student::_name 小李;a.Teacher::_name 李老师; }由监视窗口得出数据的冗余 在Assistant的对象中Person成员会有两份。 并且在访问成员变量时指定不明确有二义性 4.解决方法 4.1 访问成员变量有二义性时可指定类域。 int main() {//继承代码续接上……//1.指定类域a.Student::_name 小李;a.Teacher::_name 李老师; }4.2 虚拟继承可以解决菱形继承的二义性和数据冗余的问题 虚拟继承在继承会造成冗余的类的那里加上关键字 virtual。 class Person { public:string _name; // 姓名int _id;int _tel;string _adress; };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; // 主修课程 };int main() {Assistant a;a.Student::_name 小李;a._name 小李;a._name 李老师;return 0; }四继承的总结和反思 1.很多人说C语法复杂其实多继承就是一个体现。有了多继承就存在菱形继承有了菱形继承就有菱形虚拟继承底层实现就很复杂。 2.多继承可以认为是C的缺陷之一很多后来的OO语言都没有多继承如Java。 3.继承和组合 (1) public继承是一种is-a的关系。也就是说每个派生类对象都是一个基类对象。 (2) 组合是一种has-a的关系。假设B组合了A每个B对象中都有一个A对象。 (3) 优先使用对象组合而不是类继承。 (4) 继承可以直接访问基类的protected 和 public成员。在继承方式中基类的内部细节对子类可见 。继承一定程度破坏了基类的封装类的改变对派生类有很大的影响。派生类和基类间的依赖关系很强耦合度高。 (5) 组合只能访问public成员。组合类之间没有很强的依赖关系耦合度低。优先使用对象组合有助于你保持每个类被封装。
http://www.hkea.cn/news/14347226/

相关文章:

  • 北京怎么做网站推广wordpress顶部加横幅
  • 网站建设模板型和定制型网站底部信息
  • 湛江网站制作优化凡客诚品还有人买吗
  • 做网站官网好处怎么在中国做网站网站
  • 网站建设需求分析调研表电子商务以后的就业方向
  • 网站开发周期是什么意思西安哪个公司做网站
  • 推网站wordpress 自适应主题
  • 电子商务网站营销方案永州企业网站开发
  • 购物网站建设过程做算法题网站
  • 帝国cms地方门户网站模板做网站策划需要什么技能
  • 安康做网站的公司电话北京网站seo招聘
  • 网站 流程 工具wordpress文件简易版
  • 江宁做网站j建设局域网网站
  • 关于网站建设论文的结束语做货代的要注册哪种物流网站
  • 网站制作赚钱吗常德百竞seo
  • 辽宁省建设工程信息网官网新网站入口官方环保工程 技术支持 东莞网站建设
  • 主题网站设计与制作长春网站推广公司
  • 个人电脑做网站环保网站 下载
  • 西宁平台网站建设一般网站的前台功能模块
  • 网站规划要点曲靖企业网站
  • 怎么做网站计划网站开发维护入哪个科目
  • 宠物网站建设的可行性寻找企业网站建设
  • 优惠卷网站建设怎么挣钱黄冈app下载推广平台
  • 网站建设备案查询wordpress动态效果
  • 怎么查看网站主机商深圳软件开发公司推荐
  • dede网站底部门户网站规划
  • 浙江平台网站建设找哪家i深圳app是哪个公司开发的
  • 济南网站建设 行知科技找深圳网站建设
  • 免费查企业电话网站h5生成
  • 淄博学校网站建设公司网站建设讯美