FAQ: Why does the compiler allow me to change an int after I've pointed at it with a int const*? ←(in the new Super-FAQ)
It's in Section: Const correctness:
- FAQ: What is "const correctness"?
- FAQ: How is "const correctness" related to ordinary type safety?
- FAQ: Should I try to get things const correct "sooner" or "later"?
- FAQ: What does "Fred const* p" mean?
- FAQ: Difference between "Fred const* p", "Fred* const p" and "Fred const* const p"?
- FAQ: What does "Fred const& x" mean?
- FAQ: Does "Fred& const x" make any sense?
- FAQ: What does "const X& x" mean?
- FAQ: What is a "const member function"?
- FAQ: Using return-by-reference in a const member function?
- FAQ: What's the deal with "const-overloading"?
- FAQ: How a const member function can make an "invisible" change to a data member?
- FAQ: Does const_cast mean lost optimization opportunities?
- FAQ: Binding a pointer-to-const to a non-const object? (this FAQ)
- FAQ: Does "Fred const* p" mean that *p can't change?
- FAQ: Errors trying to convert Foo** → Foo const**?