Minha opinião é a IDE Code::Blocks 10.05 com o framework wxWidgets2.8, leves, gratuitos, com uma boa quantidade de exemplos e ainda o código roda em Windows, Linux e Mac.
Code::Block (
http://www.codeblocks.org/downloads/binaries) baixe o arquivo “codeblocks-10.05mingw-setup.exe” que já vem com o compilador para C e C++. A versão atual completa código, marca as linhas que você está alterando, é fácil de ser utilizada e está recheada de facilidades, nem parece ser gratuita.
wxWidgets (
http://wxpack.sourceforge.net/Main/Downloads) baixe a versão wxPack v2.8.10.06 e instale em um local qualquer (sem espaços no nome) e depois é só configurar na IDE (Global variables) o local da pasta. Possui uma pasta (Samples) que tem muuuuuuuitos exemplos fáceis e objetivos.
Eu sei programar em C, mas nada de C++ e estou “me virando” com os exemplos, aprendi um pouco de Delphi na graduação e achei uma grande semelhança, estou quase concluindo um programa para comunicação serial com PIC.
Quando criar um projeto escolhendo wxWidgets Project, um wizard já cria a pasta e faz a configurações necessárias. Depois disso é só arrastar e soltar os botões, caixa de texto, caixa de diálogo, combo, list, choice, statusbar, menubar e demais componentes e a IDE vai criando o código necessário

, tudo organizado, separado com as classes (com variáveis e protótipos) em um .H e o código em um .CPP.
É claro que isso é só a “casca” do programa, mas é uma “casca” linda e funcional. Depois é a hora de você fazer a sua parte e usar os exemplos para aprender (essa é a parte boa...

:):):)).
Os “samples” estão separados em pastas, mas não estão compilados. Para compilar eu crio um “wxWidgets Project” com a opção “create empty Project” e adiciono os arquivos da pasta em questão. Depois disso é só executar e entender o funcionamento acompanhando o código.
A biblioteca de classe na internet é muito completa e pode ser baixada no formato HTML, PDF ou help do Windows.
Até mais
Ivair