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

网上购物商城毕业设计杭州seo托管公司推荐

网上购物商城毕业设计,杭州seo托管公司推荐,微信公众号推广链接,北京网站开发要多少钱【学习笔记】重载和重写的注意事项 特征重载(Overloading)重写(Overriding)发生位置同一个类中/父子类之间也可以父子类之间目的扩展功能(增加新的参数组合)修改父类行为参数列表必须不同必须相同返回类型…

【学习笔记】重载和重写的注意事项

特征重载(Overloading)重写(Overriding)
发生位置同一个类中/父子类之间也可以父子类之间
目的扩展功能(增加新的参数组合)修改父类行为
参数列表必须不同必须相同
返回类型可相同或不同(但不能仅依赖返回类型区分)必须相同
隐藏关系父子类之间,子类隐藏父类同名方法(需 using 声明)子类覆盖父类方法
关键字无需特殊关键字C++: override
(override 明确表明派生类中的函数是在重写基类的虚函数)

重载:

class Calculator {
public:// 方法重载:参数类型不同int add(int a, int b) { return a + b; }double add(double a, double b) { return a + b; }// 方法重载:参数数量不同int add(int a, int b, int c) { return a + b + c; }
};

重写:

class Animal {
public:virtual void makeSound() {std::cout << "Animal makes a sound" << std::endl;}
};class Dog : public Animal {
public:// 重写父类方法void makeSound() override {std::cout << "Dog barks" << std::endl;}
};

注意点(父子的重载):

父子类的重载需要注意一个问题,函数隐藏规则:子类中的 ProcessRequest 会隐藏父类中的所有同名函数,无论参数列表是否相同。

class Base {
public:virtual bool ProcessRequest(int id) { return true; }
};class Derived : public Base {
public:bool ProcessRequest(int id, bool verbose) { return false; }  // 参数不同,是重载
};

结果呈现:

int main() {Derived d;// 正确:调用 Derived::ProcessRequest(int, bool)d.ProcessRequest(42, true);  // 错误:无法通过 Derived 对象调用 Base::ProcessRequest(int)// d.ProcessRequest(42);  // 编译错误!// 正确:通过基类指针调用 Base::ProcessRequest(int)Base* b = &d;b->ProcessRequest(42);  // 输出 "true"return 0;
}

​ ● 通过 Derived 对象无法直接调用 ProcessRequest(int),除非使用 using Base::ProcessRequest。

​ ● 通过 Base 指针调用 ProcessRequest(int) 时,实际执行的是 Base 类的方法,而非 Derived 的重载版本。

解决方法:使用using引入父类的方法。

class Derived : public Base {
public:using Base::ProcessRequest;  // 引入父类的 ProcessRequest(int)// 子类的重载版本bool ProcessRequest(int id, bool verbose) { return false; }
};

总结:

但是一般重写是在父子类中,重载是在同一个类中。但是需要注意父子重载过程中存在的父类函数隐藏的问题。

http://www.hkea.cn/news/505308/

相关文章:

  • 长沙专业网站设计平台新闻最新消息10条
  • 惠州网站建设制作宣传推广方案
  • 宁波网站推广外包服务长岭网站优化公司
  • 哈尔滨市哪里做淘宝网站seo课程心得体会
  • 做网站建设公司企业一个企业该如何进行网络营销
  • 移动端h5网站开发服务企业seo推广
  • 管理公司网站建设引擎搜索优化
  • 上市公司专利查询网站百度广告投放价格
  • html5电商网页制作网站怎么seo关键词排名优化推广
  • 大同网站建设黄冈网站推广优化找哪家
  • 昌邑网站建设站长之家网站排名
  • 建设企业网站的需求分析免费域名
  • 重庆欧勒精细有限公司网站策划书百度竞价推广开户
  • 怎么做一键添加信任网站ios aso优化工具
  • ps做网站的分辨率多少钱苹果cms永久免费建站程序
  • 网站推广积分常用于网站推广的营销手段是
  • wordpress时间云储存沈阳网站制作优化推广
  • h5响应式网站建设竞价托管哪家效果好
  • 企业解决方案参考网站品牌软文营销案例
  • 做淘客要有好的网站上海百度seo
  • 网站建设 seojsc宁德seo推广
  • 建立网站的作用信息流优化师工作总结
  • 如何建设物流网站近期时事新闻
  • 网站开发大赛发言稿网址搜索
  • 论坛类型的网站怎么做拉新推广平台有哪些
  • pc官方网站视频专用客户端app
  • 成都哪家做网站建设比较好搜索关键词排名查询
  • 无锡网站优化推广广州网站推广运营
  • 电子商务网站开发的步骤短视频seo排名系统
  • 如何用模板做网站视频河北电子商务seo