The "Freeola Customer Forum" forum, which includes Retro Game Reviews, has been archived and is now read-only. You cannot post here or create a new thread or review on this forum.
Infinitely better than:
"Type in this:
#include
int main()
{
cout << "I am a programming genius" << endl;
return 0;
}
Congratulations, you are a programming genius. Now go and program Quake 4"
http://www.amazon.co.uk/exec/obidos/ASIN/0130324108/ ref=sr_aps_books_1_1/026-8719526-9585264
Just about everything you'll want for C, C++ and Java there.
I do recommend learning Java first though, as it is easier for beginners to get to grips with, and it's 99% the same as C++ anyway. Moving on to C++ once you're fluent in Java will take you virtually no time at all.
If you do go for Java, check out java.sun.con for all the assistance you'll ever need...
As Turbonutter said, you'd be best learning C first as it is a good stepping stone into programming.
Or in your case, don't even bother starting.
http://www.delorie.com/djgpp/ is probably the best free C++ compiler out there though (to answer your question). Google for C++ tutorials. Don't get involved with C, it's not Object Oriented and you will pick up all sorts of bad habits.