What are Templates, Macros, and Namespaces?

I see this word a lot mentioned in some amateur books I've been reading and recently someone said to me on an IRC that if I cannot make my own templates, macros and namespaces, then I am using C-with-classes and not C++. Could someone offer a brief decription in simple terms of what each one is and how to use them in a small example? I am familiar with using namespaces but not creating my own. And the only namespace I have really used is std::.
Topic archived. No new replies allowed.