You should try switching from MSVC 2008 to MSVC 2010 and then complain about compile times. 2008 is so much faster than 2010. And if you're only working on one text file at a time then the compile times are so much faster. And I've used Code::Blocks and DevC++.
I've seen some of the coding techniques some people are using and I'm not surprised at compile speeds. For each cpp file I create, I create a header for it, or sometimes, one header for multiple cpp files.
Also making my point about the braces, "{}", from my days of being an assembler programmer, using C/C++ and putting local variables inside the braces "{}" can be extremely useful for gaining extra speed from loops.
Yes, C++ is so much different and can be quite complex. Hey I don't even understand a lot of it still, but I won't drop it as it's as low level programming as you can get before you have to switch to assembler.
Oops... Just making my points...
NB: As a final note I sometimes do my braces like this:
switch ( my condition is something )
... lots of lines of code
} // EOF - switch ( my condition is something )
This so I know which brace belongs where...
Mental arithmetic? Me? (That's for computers) I can't subtract a fart from a plate of beans!
Warning! May contain Nuts!