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

海曙网站建设哪家好网站风格变化

海曙网站建设哪家好,网站风格变化,女装网站设计方案,网站图标怎么设置三、继承 3.1 继承的概念 基于一个已有的类 去重新定义一个新的类#xff0c;这种方式我们叫做继承 关于继承的称呼 一个类B 继承来自 类 A 我们一般称呼 A类#xff1a;父类 基类 B类: 子类 派生类 B继承自A A 派生了B 示例图的语法 class vehicle // 车类 {}class …三、继承 3.1 继承的概念 基于一个已有的类 去重新定义一个新的类这种方式我们叫做继承 关于继承的称呼 一个类B 继承来自 类 A 我们一般称呼 A类父类 基类 B类: 子类 派生类 B继承自A A 派生了B 示例图的语法 class vehicle // 车类 {}class car:public vehicle {} 3.2 继承的意义 1、可以实现代码复用减少重复代码的劳动量 2、继承是实现多态的必要条件 3、继承本身就是为了实现多态的顺便实现了代码复用 3.3 继承的基本语法 3.3.1 使用方法 3.3.1.1 基本语法 class 子类名称:继承方式 父类名称 {子类新增的成员; }class B:public A { } 3.3.1.2 基类对象初始化 在子类的构造函数中通常需要在初始化列表中显式调用基类的构造函数以完成对基类成员的初始化。例如 在继承时需要在子类的构造函数的初始化表中 显性的调用父类的构造函数 来完成对父类成员的初始化格式 构造函数名(int val_1 , int val_2): class_A(val_1 , val_2); 3.3.1.3 派生类中调用基类 在派生类中可以通过以下方式调用基类的成员 类外访问:     对象名.基类名::变量;     对象名.基类名::函数名(函数的实参表); 类内访问:     基类名::变量;     基类名::函数名(函数的实参表); 3.3.2 示例代码一基本语法1 #include iostream #include stringusing namespace std;class person { private:public:string name;int id;int height;public:person(string name , int id , int height):name(name) , id(id) , height(height){cout 父亲构造函数 endl;} };class man : public person { private:string name; public:man(string name , int id ,int height): person(name , id ,height){}void show_data(){cout person::name person::id this-height endl ; } };int main(int argc, char const *argv[]) {man m(张三 , 1 , 131);m.show_data();return 0; }示例代码1 运行结果如下 3.3.3 示例代码二基本语法2 #include iostream #include stringusing namespace std;class person { private:public:string name;string sex;int age;public : person(string name ,int age ,string sex):name(name), age(age) ,sex(sex){cout 父类有参构造 endl;}person(){name 未设置姓名;age -1;sex 沃尔玛塑料袋;cout 父类无参构造 endl;}~person(){cout 我是父类的析构 endl ;}};class student:public person { private:public:int id;public:student(string name , string sex ,int age ,int id):person(name , age , sex ) , id(id){cout 子类有参构造 endl;}student(){name 未设置姓名;age -1;sex 沃尔玛塑料袋;id -1 ;cout 子类无参构造 endl;}~student(){cout 我是子类的析构 endl ;} public:void show_data(){cout 姓名 name endl;cout 年龄 person::age endl;cout 性别 this-sex endl;cout 学号 this-id endl;} };int main(int argc, char const *argv[]) {student s1 ;s1.name 张三;s1.person::age 10;s1.sex 男;s1.id 10;s1.show_data();return 0; }示例代码2 运行结果如下 3.4 继承的方式 3.4.1 类中的访问控制权限 类内子类类外public√√√protected√√×private√×× 而在继承中 也有三种访问方式public、protected、private 公共继承 public保护继承 protected私有继承 private 访问关系如下图 3.4.2 示例代码三继承方式 #include iostream #include stringusing namespace std;class person { private:string name; private:int age; protected:string sex;public:person(string name ,int age ,string sex):name(name) , age(age) , sex(sex){cout 父类有参构造 endl;}person(){name 未设置姓名;age -1 ;sex 沃尔玛塑料袋;cout 父类无参构造 endl;}~person(){cout 我是父类的析构 endl;} };class student : private person { private:public:int id; public:student(string name ,string sex ,int age ,int id):person(name ,age ,sex),id(id){cout 子类有参构造 endl;}student(){cout 子类无参构造 endl;}~student(){cout 我是子类的析构 endl;} public:void show_data(){}};class son : private student { private:public:son(){student::id 10;}~son(){} };int main(int argc, char const *argv[]) {son s;while (1){/* code */}return 0; }示例代码3  运行结果如下 3.5 继承的底层解释 实际开发中 一般继承都采用 pubilc 继承方式 如果不写继承方式默认使用的都是 private 方式继承 1、子类中会继承父类中所有成员 包括私有成员只不过在子类中不能直接访问父类私有成员需要父类提供公有的函数来访问父类的私有成员 2、当父子类中出现了同名的函数时访问来也不会冲突即使形参不同也不构成重载关系 愿意是两个函数不在同一个空间内如果想访问父类的成员 需要加 类名 :: 来修饰 类外访问:     对象名.基类名::变量;     对象名.基类名::函数名(函数的实参表); 类内访问:     基类名::变量;     对象名.基类名::函数名(函数的实参表); 3.5.1 示例代码四继承模型 #include iostream #include stringusing namespace std;class person { private:string name; // 姓名string sex; // 性别int age; // 年龄public:void set_name(string name){this-name name;cout name endl;} };class student:public person { private: public://1、子类如何访问父类的私有成员void set_data(string name , string sex , int age ){person::set_name(name);}//2、当父类 和 子类 函数名冲突时 咋办void set_name(string name){person::set_name(name);}~student(){person();} };int main(int argc, char const *argv[]) {student s1;s1.set_name(张三);student s2;s2.set_data(王五,男,11);person p1;p1.set_name(李四);return 0; }示例代码4 运行结果如下 ##拓展 在继承中析构和构造的区别 #构造 1、父类的构造函数不会被子类继承 2、需要在子类的构造函数的初始列表中显性的调用父类函数的构造函数     完成对父类中继承过来的成员初始化      3、如果没有在子类的构造函数初始化列表中调用父类中的构造函数 则使用无参构造     如果父类没有无参构造 会报错      4、构造函数的调用顺序是     先调用父类函数的构造函数     再调用子类函数的构造函数 #析构 1、父类的析构函数不会被子类继承      2、不管是否显性调用父类的析构函数父类的析构函数都会被调用     完成对父类中继承过来的成员的善后工作      3、子类的析构函数中 无需调用父类的析构函数      4、析构函数的调用顺序是     先调用子类函数的析构函数     再调用父类函数的析构函数 前情回顾 ​​​​​​​ 第一篇 C 面向对象封装-CSDN博客 第二篇 C 面向对象构造 析构函数-CSDN博客
http://www.hkea.cn/news/14519883/

相关文章:

  • 赚钱的网站平台如何找外包的销售团队
  • 网站建设教育seo怎么优化效果更好
  • 石家庄做标书的网站上海营销咨询公司
  • 网站代搭建维护wordpress免费教育机构主题
  • 一台云服务器做多个网站建设银行打印回单网站
  • 工信部网站备案号查询h5″wordpress
  • 北京 公司网站 备案中 开通访问网页开发流程图
  • 室内设计师网站十大网站两个人看的视频在线观看
  • 漯河建网站做网站优化两年遇到的SEO常态
  • 电子商务网站建设内容wordpress 上传图片不显示
  • 怎么制作ppt幻灯片长沙seo管理
  • 网站建设 入门知识ai效果图制作教程
  • 小米网站 用什么做的全国工程信息查询平台
  • p2p视频网站建设wordpress横幅
  • 怎么提高网站加载速度慢网站备案关闭网站
  • 深圳工程网站建设公司手机网站模板
  • 技术支持东莞网站建设机械有创意广告店名字大全
  • 完整个人网站html免费网址大全
  • 百度包年推广网站建设淘宝指数查询
  • 江苏响应式网站建设哪里有建设网站主题
  • 衡水市住房和城乡规划建设网站wordpress活动召集插件
  • 网站源码分享网杭州企业seo网站优化
  • 做网站送商标网站首页的布局设计
  • 百度做的网站 后台管理怎么进入网站建设公司使用图片侵权使用者有无责任
  • 网站建设规划书 百度文库信用卡在哪些网站上做推广
  • 创建好网站如何把浏览网络推广方案例子
  • 国外采购网站大全做蛋糕有哪些网站
  • 餐饮行业网站建设河南艾特网站建设公司
  • 做网站要学的东西做网站要用框架吗
  • 做网站的基本功建立网站的链接结构有哪几种形式