I've been rather alarmed at the size of the binaries of simple "Hello world" tests compiled with mingw32-g++. I used the minimal console template project in Code::Blocks to do the C version and with the debug info stripped, it's a good 5.5kb which is pretty decent and okay. I then try the C++ version of C::B's console project template (which uses the iostream instead of stdio.h of course) and even with debug symbols stripped it compiles into 269kb (!)
Is C++'s iostream, compared to C's stdio.h, really that much bigger? If it's possible, does MinGW have a compiling method of compiling only what's actually used in the application, or is it already doing that and C++ just uses that much more in size?
I mean, small example is of course not that big a deal, but when I go into more complex projects, that will probably make a difference.
I know stuff made in VC9 is smaller and faster, but I've used GCC a lot more and it's my compiler of preference... Besides, VC9, in some cases, has required C++ language differences that don't apply to cross platform compilers. Like, in some C++ books I've read there was commented code with the note "Uncomment if using VC++"