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

网站建设难么北京网站seo费用

网站建设难么,北京网站seo费用,网站备案主体查询,问问建设网站的人1. final 关键字 a. 用途 final 关键字用于两个方面: 修饰类:防止类被继承。修饰虚函数:防止虚函数被重写(覆盖)。 b. final 修饰类 当一个类被声明为 final,它就不能被继承。也就是说,任何…

1. final 关键字

a. 用途

final 关键字用于两个方面:

  1. 修饰类:防止类被继承。
  2. 修饰虚函数:防止虚函数被重写(覆盖)。
b. final 修饰类

当一个类被声明为 final,它就不能被继承。也就是说,任何继承该类的尝试都会导致编译错误。

class A {
public:void func() {}
};class B : public A {}  // 合法继承class C final : public A {};  // C 类不能被继承class D : public C {}  // 编译错误:无法继承自 'final' 类
  • 总结:当你希望一个类不被继承时,可以使用 final 来标记该类。
c. final 修饰虚函数

final 用于虚函数时,它表示该函数不能在子类中被重写(覆盖)。

class A {
public:virtual void func() final {std::cout << "A's func" << std::endl;}
};class B : public A {
public:void func() override {  // 编译错误:无法重写 A 中的 final 函数std::cout << "B's func" << std::endl;}
};
  • 总结final 关键字用于标记虚函数,防止它在派生类中被重写。这样可以确保父类中的实现不可被更改。

2. override 关键字

a. 用途

override 用于标记子类中的虚函数,明确表示该函数是用来重写父类的虚函数的。这个关键字可以帮助编译器进行更多的检查,以确保子类中的函数确实覆盖了父类的虚函数。

b. 使用场景

当子类重写父类的虚函数时,使用 override 来明确标识。这不仅是为了可读性,还能帮助编译器检查是否真的有虚函数被重写。

class A {
public:virtual void func() {std::cout << "A's func" << std::endl;}
};class B : public A {
public:void func() override {  // 使用 override 明确表示是重写父类的虚函数std::cout << "B's func" << std::endl;}
};
c. 编译器检查

如果子类的函数没有正确重写父类的虚函数(例如,函数签名不同),编译器会给出错误提示。

class A {
public:virtual void func(int val) {std::cout << "A's func" << std::endl;}
};class B : public A {
public:void func() override {  // 错误:函数签名不匹配,编译器会给出提示std::cout << "B's func" << std::endl;}
};
  • 总结:使用 override 关键字确保子类中的虚函数正确覆盖了父类的虚函数。如果签名不匹配或其它原因不能覆盖,编译器会报错。

3. finaloverride 配合使用

这两个关键字可以一起使用。例如,你可以在子类中声明一个虚函数为 override,并在父类中标记一个虚函数为 final,这样就禁止了子类进一步的重写。

class A {
public:virtual void func() final {  // 不能被重写std::cout << "A's func" << std::endl;}
};class B : public A {
public:void func() override {  // 错误:父类函数是 final,不能重写std::cout << "B's func" << std::endl;}
};

总结

  • final 用来禁止继承或者禁止重写虚函数。用于类时防止继承,用于函数时防止重写。
  • override 用来明确标识子类函数是重写父类的虚函数,它能帮助编译器检查函数是否正确覆盖了父类的虚函数。

如果你在编码时使用这两个关键字,不仅可以提升代码的安全性和清晰度,还能减少潜在的错误,确保继承和重写的正确性。

http://www.dtcms.com/wzjs/463104.html

相关文章:

  • 做任务领佣金的网站如何注册自己的网站
  • 大连零基础网站建设教学联系电话seo网站优化专员
  • 怎样做网站推广啊青岛seo青岛黑八网络最强
  • 学校网站开发的背景视频号怎么推广流量
  • 开个网站做seo行业岗位
  • 在一呼百应上做网站行吗关键词排名的工具
  • 华强北手机网站建设广告软文范例大全100
  • 雄安网站建设公司做销售记住这十句口诀
  • bat 做招聘网站收录好的网站
  • 安徽索凯特建设工程有限公司网站微信群发软件
  • 数据需求 网站建设seo外包大型公司
  • 不用下载就能玩的网页游戏济南seo优化外包服务公司
  • 北碚区建设银行网站苏州seo免费咨询
  • 网站不能自行备案吗优化网站软文
  • 黑龙江做网站的公司有哪些苏州网络推广seo服务
  • 搭建企业网站具体过程论坛推广平台有哪些
  • 分析网站日志文件为什么外包会是简历污点
  • 朔州公司做网站seo推广案例
  • 公司网站网页设计最基本的网站设计
  • 免费java源码分享网站源码百度网登录入口
  • 镇江手机网站制作如何推广网站链接
  • 烟台网站制作这线上推广是什么工作
  • 高新建设网站电话站内关键词排名优化软件
  • 网站空间哪家做的好企业文化的重要性
  • 做o2o平台网站需要多少钱短视频运营培训学费多少
  • 谢岗仿做网站深圳网站制作设计
  • 企业网站管理系统用哪个好品牌推广方案策划书
  • 深圳产品型网站建设16种营销模型
  • 网站界面设计的优点站长之家关键词查询
  • 关键词seo如何优化网站排名优化查询