【发布时间】:2011-02-17 20:49:33
【问题描述】:
可能重复:
Does declaring C++ variables const help or hurt performance?
除了不能更改成本变量之外,它使用的内存更少还是可以更快地访问值?
const int a = 1;
int b = 1;
考虑到它是同一个全局、本地和类成员。
谢谢
【问题讨论】:
可能重复:
Does declaring C++ variables const help or hurt performance?
除了不能更改成本变量之外,它使用的内存更少还是可以更快地访问值?
const int a = 1;
int b = 1;
考虑到它是同一个全局、本地和类成员。
谢谢
【问题讨论】:
它使用更少的内存还是可以更快地访问值?
通常两者都没有。它只是使程序更加健壮,因为您(或其他人)不能意外更改该值。
当您想向消费者表明您不会修改他们的值时,这在公共 API 中特别有意义。变量的每一次修改都意味着程序状态的改变。为了让程序员确保他们的程序正常工作,他们需要跟踪状态,如果他们不知道变量何时或如何改变,这非常困难。 p>
const 的主要目的是记录语义,这是一个非常强大的目的。经常使用const。
【讨论】:
引用 const 变量并不快。为此使用restrict 参数。
标准库字符串函数将使用 const 让您知道您的数据结构没有副作用,它用于建立只读策略并避免副作用。
【讨论】: