@Vagabond: Agreed on all counts.
The wording "const on function variables" sounds a bit strange. I assume you mean how you can declare a member function as const, which means the member function is not able to change any class member variables. It also means that function can be called on a const object, since the compiler can guarantee the member function won't change the object.
I much prefer the naming in the Microsoft world over the C++ standard library world, or the Linux terminal world. Longer spelt out names that don't have random letters dropped are easier to remember, and with code completion available in most editors, really not much more typing. Besides, most of the time spent programming is thinking, not typing, so abbreviating names to the point of obscurity is counter productive.
I hate how C++ requires duplication between header files and implementation files. Ideally, the information needed by a header import can be generated automatically from the source file, which is how pretty much every other language does it these days. I guess computers were simpler and more memory constrained when C++ was first designed though. And yes, it's not ideal that header files contain private implementation details. One of the issues there, is the class size is necessarily a public detail when allocation is done outside the class. This is relevant to both local variables on the stack, where stack frame space needs to be reserved, or when using new/delete, when a size must be passed to the memory allocator. The calling code must know how much space to reserve for the object, and so needs to know the size of the object. The size of course depends on both public and private fields. Still, that's something a compiler can determine by scanning an implementation file and generating some sort of pre-compiled import information. There really should be no need for header files. Also, I hate how constructors are named after the class. This is excessive duplication. If you ever want to change the name of your class, you also have to change the name of all the constructors too. A burden somewhat eased by refactoring tools available in some IDEs, but still unnecessary.
If you're ever in the mood to gripe about C++, go check out the C++ FQA (Frequently Questioned Answers). :p