我想知道在使用值的副本const初始化非引用/指针变量时使用可选限定符有哪些优点和缺点:
例如:
void f(const T v)代替void f(T v) // v does not need to be changedif (const int err = f()) {/*...*/}代替if (int err = f()) {/*...*/}- 甚至
void f() {const T* const v = p; /*...*/}代替void f() {const T* v = p; /*...*/}
只是风格问题吗?C++11 标准在其示例中使用了什么?不能const提示编译器将变量存储在一些特殊的只读内存中(在某些实现中)?