根据下面的程序,我可以理解到,在引用前加上
const
关键字意味着引用了一个 常量引用(const reference)
指向一个常量值,这个理解正确吗?#include <iostream>
using namespace std;
struct s
{
int x;
};
int main(void)
{
s a = {10}, b = {30};
// IN POINTERS ----------------
const s* ptrToConstValue;
ptrToConstValue= &a;
//ptrToConstValue->x = 30;
ptrToConstValue = &b;
s* const constPtrToNonConstVaue = &a;
constPtrToNonConstVaue->x = 40;
//constPtrToNonConstVaue = &b;
const s* const constPtrToConstValue = &a;
//constPtrToConstValue = &b;
//constPtrToConstValue->x = 30;
// IN REFERENCES -------------
const s& seemsToBeConstRefToConstValue = a;
//s = b;
//s.x = 30;
return 0;
}
(const T)&
,它将始终被解析为“(const T)&
”,而不是“const (T&)
”。 - Kerrek SB