Const correctness this FAQ Binding a pointer-to-const to a non-const object? this FAQ explanation taken from IsoCPP.org What does "Fred const* p" mean? C++ FAQ const correctness isocpp.org/wiki/faq/const-correctness#const-ptr-vs-ptr-const https://isocpp.org/wiki/faq/const-correctness Does "Fred const* p" mean that *p can't change? Const Correctness https://isocpp.org/wiki/faq/const-correctness this FAQ const-correct const correct this FAQ Const Correctness Does const_cast mean lost optimization opportunities? What is a "const member function"? this FAQ Const correctness https://isocpp.org/wiki/faq/const-correctness const-correct this FAQ this FAQ Errors trying to convert Foo** → Foo const**? this FAQ What does "Fred const& x" mean? How is "const correctness" related to ordinary type safety? explanation taken from IsoCPP.org https://isocpp.org/wiki/faq/const-correctness Does "Fred& const x" make any sense? const-correct C++ FAQ What is "const correctness"? What does "const X& x" mean? this FAQ SuperFAQ Q&A What's the deal with "const-overloading"? Using return-by-reference in a const member function? const correctness