Quote Originally Posted by matsp View Post
It is VALID, compilable in C and C++ - and don't tell me that you use vector for every single array that you ever need? There are cases when vector is the right solution, there are others where an ordinary array is just fine.
If an "array" is the right solution, then IMHO, there simply isn't a good standard container available. Plain "old arrays" are never the best solution unless you're looking for speed.

It is very likely, in my mind, that a C++ book doesn't start with STL, but begins by teaching the basic concepts that are part of the basic C++ language first, then introduces C++. In my C++ book ["C++ for programmers" or some such], the first 6-7 chapters are about the basic language, only in chapter 7 (or 8?) does it get onto templates, and only after that does it get into STL.
Of course, I wasn't intentionally implying that it would apply to all programs. Beginners typically always begins with C++/C and moves on to more real C++ later. But when they are full fledged programmers, they should be using C++ and not C++/C.

Quote Originally Posted by matsp View Post
Maybe I'm also not writing enough user-mode code tho' - I try to avoid code that allocates memory or adds overhead more than necessary.
Also this suggests to me that kernel mode really needs to overgo a rehaul. There should be no limit on memory to use and be scared of overhead. That makes code unsafe and that makes the OS crash.
Safe code before unsafe code, as I say.