C++语言一些可变的活生生的例子
有人可以展示一个 mutable
关键字在 const
函数中使用时的使用实例,并在一个实例中解释一下 mutable
> 和 const
函数,以及 volatile
成员和函数的区别。
Can someone show a live example of the usage of mutable
keyword, when it is used in a const
function and explain in a live example about the mutable
and const
function and also difference for the volatile
member and function.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我曾经用它来实现记忆化。
I used it once to implement memoization.
您可以在计数器上使用 mutable 来跟踪通过 const 访问器访问类成员的次数。
You can use mutable on a counter tracking the number of time a Class member is accessed through a const accessor.
您可以将 mutable 用于允许在 const 对象实例中修改的变量。这称为逻辑常量(与按位常量相反),因为从用户的角度来看对象没有改变。
例如,您可以缓存字符串的长度以提高性能。
You can use mutable for variables that are allowed to be modified in const object instances. This is called logical constness (opposed to bitwise constness) as the object has not changed from the user's point of view.
You can for example cache the length of a string to increase performance.