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

凡科网站建设完成下载下载器东莞seo网络推广专

凡科网站建设完成下载下载器,东莞seo网络推广专,网站域名解释怎么做,网站建设费用有哪些1.介绍 final是C11引入的特性,用于限制类或虚函数的进一步继承或重写,旨在增强代码的安全性和可维护性。经常与override一起使用。不了解override的读者可以看这里———>C11新特性之override-CSDN博客 2.final的用法 (1)禁止…

1.介绍

        final是C++11引入的特性,用于限制类或虚函数的进一步继承或重写,旨在增强代码的安全性和可维护性。经常与override一起使用。不了解override的读者可以看这里———>C++11新特性之override-CSDN博客

2.final的用法

        (1)禁止类被继承

        将final关键字放在类名后边,可以禁止其他类继承该类。例如:

class Base final { // Base 类不能被继承
public:void func() {std::cout << "Base::func()" << std::endl;}
};// class Derived : public Base {}; // 错误:Base 是 final 类,不能继承int main() {Base baseObj;baseObj.func(); // 输出: Base::func()return 0;
}

        (2)禁止虚函数被重写

        将final关键字放在虚函数声明后面,可以进制派生类重写该函数。例如:

class Base {
public:virtual void func() final { // 禁止派生类重写 funcstd::cout << "Base::func()" << std::endl;}
};class Derived : public Base {
public:// void func() override {} // 错误:Base::func() 是 final,不能重写
};int main() {Derived derivedObj;derivedObj.func(); // 输出: Base::func()return 0;
}

        (3)override与final结合使用

        final与override一起使用,以明确表明函数是重写的,但禁止进一步的重写。例如:

class Base {
public:virtual void func() {std::cout << "Base::func()" << std::endl;}
};class Derived : public Base {
public:void func() override final { // 重写并禁止进一步重写std::cout << "Derived::func()" << std::endl;}
};class FurtherDerived : public Derived {
public:// void func() override {} // 错误:Derived::func() 是 final,不能重写
};int main() {FurtherDerived obj;obj.func(); // 输出: Derived::func()return 0;
}

3.final的使用场景

        (1)设计不可扩展的类。一个类设计完整,不需要被继承,可以用final。

        (2)保护关键虚函数。当某个虚函数实现已经固定,不希望派生类修改时,可以使用final。

        (3)优化性能:标记为final的类或虚函数可以帮助编译器进行优化,因为编译器知道它们不会被进一步拓展或重写了。

4.总结        

  • final用于禁止类被继承或虚函数被重写。

  • 它可以增强代码的安全性和可维护性,防止意外的继承或重写。

  • 结合 override 使用,可以更清晰地表达设计意图。

  • 适用于设计不可扩展的类或保护关键虚函数的场景。

合理使用final,可以更好地控制类的继承层次和虚函数的行为,使代码更加健壮和易于维护。

如有错误,敬请指正!!!

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

相关文章:

  • 河北省建设厅网站手机版提高工作效率的软件
  • 怎样建设自己的ip地址网站google国外入口
  • 好的企业型网站模板下载山东济南最新消息
  • 怎么建设分销模式手机网站宁波seo关键词优化
  • excel做网站数据库网站优化系统
  • 平台里的钱提现不了怎么追回专门培训seo的网站
  • 网站建设外包质量进度跟进外贸网站都有哪些
  • 上海网站设计找哪家seo优化上海牛巨微
  • 乐陵网站优化福州百度快照优化
  • 使用vue做的网站怎么才能创建一个网站
  • b2b网站免费推广平台推荐好用的百度网盘搜索引擎
  • 西藏网站建设推广网站宣传推广文案
  • 做网站图片ps用哪种字体快点tv下载安装
  • 阿里巴巴 网站建设外链提交
  • php做网站参考文献google play下载官方版
  • 给期货交易类做网站违法吗潍坊做网站哪家好
  • 网站代码预览器经典软文
  • 网站开发与设计入门在线排名优化
  • 湘潭做网站 就问磐石网络南宁做网站公司
  • 快速搭建网站wordpress北京百度关键词推广
  • 北京做电商网站设计嘉兴seo外包服务商
  • 网站怎么申请微信支付接口友链交换网站
  • 福州品牌网站建设公司厦门seo服务
  • 天长网站建设天长最近一个月的热点事件
  • 清徐网站建设做好的网站怎么优化
  • 购物网站建设机构搜索引擎营销的方法
  • wordpress 不显示主题优化什么意思
  • WordPress积分提现插件聊城seo培训
  • 网站建设技术支持有什么游戏推广拉人渠道
  • 查看网站建设的特点网站建设的步骤