Const Confusion

'const' is the keyword used when you don't want the variable to change throughout the program. But why would you need 'const' if there is no risk that the variable can change. I've seen const in some programs that i think really doens't need to be there. Is it just a visual aid to the reader, saying that "This variable is one that doesn't change."??

no not at all. const behind the scenes lets your compiler make all sorts of optimisations that would otherwise be near impossible. There is a good article on const correctness here. Read the others too.

Say you are making a series of functions that anyone can use to do matrix maths. If you have a constant defined in your header file, and the user has a variable by the same name, renames it so your functions will work, but forgets to rename an instance where a value is assigned to it, an error will show. Otherwise, the value would be changed, most likely screwing up all of your functions.

Naturally I didn't feel inspired enough to read all the links for you, since I already slaved away for long hours under a blistering sun pressing the search button after typing four whole words! - Quzah

You. Fetch me my copy of the Wall Street Journal. You two, fight to the death - Stewie