首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

今日学习必备,C+中的最终运算符。学会使用助你学习更上一楼

在Java中,我们可以对函数使用final来确保它不能被覆盖。我们还可以在Java中使用final来确保不能继承类。同样,C ++标准C ++ 11添加了final。

在C ++ 11中使用最终说明符:

有时您不想允许派生类重写基类的虚函数。C ++ 11允许使用内置工具来防止使用最终说明符覆盖虚拟功能。

考虑以下示例,该示例显示了最终说明符的用法。该程序编译失败。

最终说明符的第二次使用:

C ++ 11中的最终说明符也可以用于防止类/结构的继承。如果将一个类或结构标记为final,则它将变为不可继承的并且不能用作基类/结构。

以下程序显示了使用最终说明符使类不可继承:

C ++ 11与Java

中的final注意请注意,C ++ 11中使用final指示符与Java中相同,但是Java在类名称之前使用final指示符,而C ++ 11中在类名称之后使用final指示符。方法定义的开始(在方法的返回类型之前),但是C ++ 11在函数名称之后使用最终说明符。

与Java不同,final不是C ++ 11中的关键字。final仅在以上上下文中使用时才具有含义,否则仅是标识符。

不使final为关键字的一种可能原因是确保向后兼容。可能存在将final用于其他目的的生产代码。例如,以下程序编译并运行时没有错误。

在Java中,final也可以与变量一起使用,以确保一个值只能分配一次。C ++ 11中没有final的这种用法。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210305A06W5R00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券