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

大连市网站推广公司响应式网站设计工具

大连市网站推广公司,响应式网站设计工具,聊天软件开发流程,网建公司浅谈网站建设的目的和意义前言#xff1a; 在前面#xff0c;我们已经将C的初阶部分全部讲完了#xff0c;包括类与对象、STL、栈和队列等众多内容#xff0c;今天我们就进入C进阶部分的学习#xff0c;今天先来学习第一弹——继承 目录 一、什么是继承#xff1f;为什么会有继承#xff1f; 二…前言 在前面我们已经将C的初阶部分全部讲完了包括类与对象、STL、栈和队列等众多内容今天我们就进入C进阶部分的学习今天先来学习第一弹——继承 目录 一、什么是继承为什么会有继承 二、继承的基本概念 2.1 继承的定义 2.2 继承关系和访问限定符 2.3 继承方式所带来的权限问题 三、基类和派生类的赋值转换 四、总结 一、什么是继承为什么会有继承 所谓继承其实就是对代码复用的一种手段通过一个已经存在的类来建立一个新类并简化代码比如当我们创建一个教师类和一个学生类的时候他们所包含的信息分别是学生姓名、年龄、学号老师姓名、年龄、工号。 对于这样两个类他们所包含的信息有很高的重合度如果我们写两个类来包含各自的信息就会显得比较冗余尤其当我们的代码量很大的时候如何来复用代码对于我们简化代码就很重要。下面我们通过上面所说的教师类和学生类来引出我们的继承 不用继承 #includeiostream #includestring using namespace std; class Teacher //教师类 { public:void print(){cout _name endl;cout _age endl;} private:string _name zhangsan; //名字int _age 20; //年龄string _jobid; //工号 }; class student { public:void print(){cout _name endl;cout _age endl;} private:string _name zhangsan; //名字int _age 20; //年龄string _jobid; //学号 }; int main() {Teacher t;student s;t.print();s.print();return 0; } 我们会发现这样的一段代码非常冗余相同的成员变量和成员函数却要写两次接下来我们就通过继承来简化这段代码 继承 #includeiostream #includestring using namespace std; class Person { public:void Print(){cout name: _name endl;cout age: _age endl;} protected:string _name peter; // 姓名int _age 18; //年龄 };class Student : public Person { protected:int _stuid; // 学号 }; class Teacher : public Person { protected:int _jobid; // 工号 }; int main() {Student s;Teacher t;s.Print();t.Print();return 0; } 二、继承的基本概念 2.1 继承的定义 上面我们定义的Person类为父类student和teacher类都是基类 2.2 继承关系和访问限定符 2.3 继承方式所带来的权限问题 描述 上面所说的不可见其实就是不能直接访问的意思通过上面的表格我们可以得到一个规律派生类的权限大小取决于父类中成员的开放程度和继承方式并且是以两者中权限小的为准 三、基类和派生类的赋值转换 基类和派生类有一个挺重要的问题就是互相之间的赋值转换因为两者之间相似点还是很多的所以他们两个之间是否可以相互转换呢 答案是派生类可以赋值给基类但是基类不能赋值给派生类 派生类对象 可以赋值给 基类的对象 / 基类的指针 / 基类的引用 。这里有个形象的说法叫切片 或者切割。寓意把派生类中父类那部分切来赋值过去。 如图所示 下面我们给出赋值各种情况的代码建议仔细阅读一下 #includeiostream #includestring using namespace std; class Person { protected:string _name; // 姓名string _sex; //性别int _age; // 年龄 }; class Student : public Person { public:int _No; // 学号 }; void Test() {Student sobj;// 1.子类对象可以赋值给父类对象/指针/引用Person pobj sobj;Person* pp sobj;Person rp sobj;//2.基类对象不能赋值给派生类对象sobj pobj;// 3.基类的指针可以通过强制类型转换赋值给派生类的指针pp sobj;Student * ps1 (Student*)pp; // 这种情况转换时可以的。ps1-_No 10;pp pobj;Student* ps2 (Student*)pp; // 这种情况转换时虽然可以但是会存在越界访问的问//题ps2-_No 10; //这就是越界访问的情况 } 四、总结 上面只是简单的讲了一下C继承的一些知识由于我们近期考试周的缘故暂时就先写这么多了下一篇我们将详细地介绍继承中一些更难的问题比如多继承菱形继承等问题今天的文章就先到这了感谢观看 感谢各位大佬观看创作不易还请各位大佬点赞支持一下下呀
http://www.w-s-a.com/news/496190/

相关文章:

  • 创意设计网站公司手机wap网站建设多少钱
  • 甘肃省第八建设集团公司网站seo高级优化方法
  • 精美的商城网站介绍最多人用的wordpress子主题
  • 检察门户网站建设情况俄外长抵达北京
  • 老电脑做网站服务器网站在线留言如何做
  • 南宁广告公司网站建设小程序源码破解
  • 沛县做网站xlec网站建设开发方式包括哪些方面
  • 山西网站建设 哪家好四川城乡和建设厅网站
  • 有瀑布流的网站小型商城网站
  • 百石网怎么做网站二次开发软件
  • 网站域名是什么东西制作网页哪家好
  • 合肥网站建设团队简述网站内容管理流程
  • 网站广告是内容营销吗wordpress增加背景图片
  • 网站建设技术jsp课程设计响应式布局网站开发
  • 东莞网站排名优化seo套路网站怎么做的
  • 我做网站网络建站一般多少钱
  • 如何快速提升网站关键词排名房地产网站开发毕业设计
  • 做网站 提交源码 论坛sem分析是什么意思
  • 网站建设与部署阿里云大学百度付费推广有几种方式
  • 作品集怎么做网站个人简历模板免费下
  • 工业网站素材重庆关键词自动排名
  • 拖拽式网站建设费用微网站怎么做的好名字
  • 长沙电信网站备案谷歌推广怎么做最有效
  • 网站建设与管理总结报告华为开发者联盟
  • 门诊部网站建设天空建筑网站
  • 扬州市城乡建设网站高端品牌鞋子有哪些牌子
  • 杭州网站建设招聘网长沙网络销售公司
  • 网站制作一年多少钱免费做电子章网站
  • 信誉好的营销网站建设徐州市铜山新区建设局网站
  • 建行网站关于我们山西seo和网络推广