Something I wrote recently:
About compilers: keep in mind that an IDE and a compiler are two different things. Often enough they are bundled together. A lot of people like the Dev-C++ IDE because it is a simple and friendly beginner environment. However, it comes bundled with a very old version of the GCC (Gnu Compiler Collection) which barely supports ISO standards. You can upgrade the GCC of course:
http://www.cplusplus.com/forum/beginner/4647/
However, you would do well to start out with something better. Suggestions:
Code::
Blocks
http://www.codeblocks.org/
Get the one that comes with the GCC (if you are using Windows it is called "MinGW").
Cross-platform.
Turbo C++ Explorer
http://www.turboexplorer.com/cpp
This is the Borland/Inprise/Codegear sold to Embarcadero version. It is a pretty solid compiler+IDE and uses the Dinkumware STL.
Windows only.
Microsoft Visual C++ Express
http://www.microsoft.com/express/vc/
I can't get this blasted thing to install on my computer (because .NET 3.x won't install) but if you can get it to work you have a very nice environment that is used by a lot of people for compiling their projects under Windows. Stroustrup himself likes this one.
Windows only.
If you are not on Windows, you are likely going to use the GCC. IDEs that work with it include:
wxDev-C++
http://wxdsgn.sourceforge.net/
This is an update to the Dev-C++ that uses wxWidgets GUI toolkit natively.
Cross-platform.
Ultimate++
http://www.ultimatepp.org/
A very complete and useful IDE which includes a lot of useful stuff.
Cross-platform.
KDevelop
http://www.kdevelop.org/
Another very nice development environment, using the Qt framework. I believe that it comes bundled with an appropriate version of Qt, but overall this IDE takes a bit of work to get set up properly. (It is worth it though.) The one thing you really need to be aware of is licensing issues with Qt -- you'll need to purchace a commercial license if you ever intend to sell your software.
Cross-platform.
Eclipse
A very large, highly configurable OSS development platform. I don't really recommend this one to beginners, due to its complexity, but many knowledgeable folk here use it regularly in both amateur and professional venues. (I've never used it, though.)
Cross-platform.
As a final note, you will probably want to install more than one IDE/compiler. This helps you test your code against a variety of compilers -- each compiler has weakness in terms of non-standard stuff it lets you get away with.