为了账号安全,请及时绑定邮箱和手机立即绑定

const-correctness是否为编译器提供了更多优化空间?

const-correctness是否为编译器提供了更多优化空间?

C
UYOU 2019-11-29 10:07:35
我知道它可以提高可读性并使程序不易出错,但是它可以在多大程度上提高性能呢?另外,引用和const指针之间的主要区别是什么?我假设它们以不同的方式存储在内存中,但是怎么办呢?
查看完整描述

3 回答

?
回首忆惘然

TA贡献1847条经验 获得超11个赞

constC ++ 存在两个问题(就优化而言):


const_cast

mutable

const_cast 这意味着即使您通过const引用或const指针传递对象,该函数也可能会舍弃const-ness并修改该对象(如果该对象不是const开头,则允许)。


mutable表示即使一个对象是const,它的某些部分也可能被修改(缓存行为)。此外,const即使在逻辑上是对象状态的一部分,也可以在方法中修改指向的对象(而不是拥有对象)。最后,全局变量也可以修改...


const 是为了帮助开发人员尽早发现逻辑错误。


查看完整回答
反对 回复 2019-11-29
  • 3 回答
  • 0 关注
  • 451 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信