|
Nesse site, esperamos que você já tenha um conhecimento básico da linguagem C++. Se não é o seu caso, recomendamos que você aprenda com algum dos materiais descritos nesse artigo.
Para quem está começando
Começar é um passo difícil. É importante escolher um livro didático. Qualquer um dos livros abaixo se enquadram nesse caso, basta escolher um deles. Note que os livros já são de C++. Não recomendamos iniciar os estudos através do C, justamente por conter um estilo de programação que não é mais usado em C++, assim, você evita vícios.
Programação Orientada a Objetos em C++, do prof. André Duarte Bueno (UFSC): Ótimo material, em português e disponível para download gratuitamente aqui.
C++ Como Programar, Deitel: Para quem nem sabe programar, ou não sabe nem C e C++. O livro é muito didático, indiscutivelmente melhor que o livro de java do mesmo autor. E com a vantagem de ensinar C++, sem te viciar no estilo C. Ainda assim, há vários comentários que explicam a diferença das duas e no que o estilo C++ é superior ao C.
C++: A Beginner's Guide, Second Edition : Para quem já tem uma certa noção de programação (não precisa ser expert) mas quer aprender C++.
Programming: Principles and Practice Using C++ : Livro básico da linguagem C++, escrito pelo próprio Bjarne Stroustrup, criador da linguagem. O livro não aborda apenas C++, mas conceitos e técnicas fundamentais de programação.
Accelerated C++: Practical Programming by Example , do Andrew Koenig: Para quem não sabe C, e nem quer saber, mas quer aprender C++;
Você não precisará saber muito além disso para entender os artigos de C++ desse site. Entretanto, caso você tenha interesse em se aprofundar na linguagem, a lista de livros abaixo também é recomendada.
Para quem já sabe C++:
Essa lista é uma espécie de RoadMap. O ideal é pegar cada um desses livros mais ou menos nessa ordem. Dá para trocar a ordem dos dois primeiros, eles são igualmente importantes. O último livro da lista é extremamente conceitual e profundo, mas é legal se você quiser ter um entendimento teórico mais forte sobre os patterns envolvendo templates usados na STL (e que, portanto, podem ser usados no dia-a-dia).
The C++ Standard Library: A Tutorial and Reference de Nicolai M. Josuttis: programar em C++ hoje sem saber a STL é abrir mão de quase trinta anos anos de evolução da linguagem.
Effective C++ , do Scott Meyers: Faz você programar C++ de verdade, e não C com classes. Se você ainda usa #define para fazer constantes, ou não sabe para que declarar um método como const, leia esse livro;
More Effective C++ , do Scott Meyers: Uma boa extensão ao Effective C++.
Effective STL , do Scott Meyers: Saiba boas e más práticas envolvendo a STL;
Beyond the C++ Standard Library: An Introduction to Boost , do Björn Karlsson: Para quem quer entender bem as coleções extras da boost e o esquema de “garbage collection” via smart pointers que é possível com C++;
C++ Templates: The Complete Guide , de David Vandervoorde e Nicolai M. Josuttis: O guia mais completo, didático e explicativo sobre templates. Cobre desde a sintaxe básica até usos bastante avançados. Dá dicas de design e uso inteligente da programação genérica e meta-programação.
Modern C++ Design , de Andrei Alexandrescu: Definitivamente um dos melhores e mais importantes livros sobre design patterns envolvendo templates. Ajuda a entender os Allocators da STL, por exemplo. Entretanto, saibam bem templates antes de começa-lo. Ele é definitivamente um complemento ao livro anterior;
Não incluí nessa lista nenhum livro sobre sistemas operacionais específicos.
-
13/12/2009 15:51:48 | Vinícius Godoy de Mendonça

Online geralmente você só encontra material básico, como o livro do André Bueno, indicado.
Ou artigos esporáticos, como os do GamaSutra, Artima, Informit, entre outros sites.
Os livros são muito melhores pois apresentam o conteúdo de maneira mais didática e completa.
-
23/12/2009 00:22:48 |189.48.162.xxx| Alan

Muito bom livros.
sobre a pergunta do nosso amigo ali em cima. existe um bom site de C++: http://www.cplusplus.com/
Abraços
-
26/05/2010 11:27:44 |189.13.215.xxx| Luiz Gustavo - Apostila

O primeiro link não esta abrindo a pagina carrega mas não abre. vlw
-
26/05/2010 11:37:17 | Vinícius Godoy de Mendonça

Clique com o botão direito no link e use a opção de "Salvar como". Ele vai gravar um pdf no seu computador. Aí é só abri-lo com o reader.

-
01/06/2010 15:07:42 |189.54.102.xxx| Jessica

Gostaria de saber quais livros vc indicaria voltado para área de games.
Grata
-
01/06/2010 15:26:00 | Vinícius Godoy de Mendonça

Oi Jessica. A área de games é muito vasta. Seu interesse é em programação? Game design? Se for em programação, é em alguma área específica como IA?
-
01/06/2010 15:48:16 |189.54.25.xxx| Anônimo

Então, gostaria de saber da parte de programação.
Já trabalho com jogos, jogos educativos, mas em ActionScript 2 e 3.Gostaria de aprender c++, pois é a linguagem que as grandes empresas pedem.
Se poder ajudar, ficarei grata!
-
01/06/2010 15:54:18 | Vinícius Godoy de Mendonça - Livros de C++

Então, os primeiros livros desse roadmap são bons para aprender a linguagem C++ em si. E há muito o que aprender, antes de entrar na parte de jogos em si.
A linguagem é muitíssimo mais complexa que o ActionScript.
Para a parte de jogos, tem o livro C++ for Game Programmers, do Dickheisen. Para jogos 2D, você pode pegar o livro Focus on SDL, que mostra uma boa API para jogos mais simples.
-
27/12/2011 16:04:04 |186.222.249.xxx| Anônimo

Só uma pequena correção a respeito do livro citado "C++ for Game Programmers" foi escrito por Mike Dickheiser e não Dickheisen.
-
29/08/2010 15:44:23 |189.115.154.xxx| Otto

Esse da MS é voltada para Windows e a IDE deles ou portável?
Um outro que vi e você pode avaliar (tem na web) é o A Quick Introduction to C++, de Tom Anderson.
-
29/08/2010 16:27:13 | Bruno Crivelari Sanches

Sim, ele é sobre C++ padrão, não tem nada de Windows nele...
-
29/08/2010 16:29:39 | Vinícius Godoy de Mendonça

O livro é da MS Press, mas é sobre C++ genérico. Pena que é do Schildt. Não gosto muito desse autor.
Os mais recomendados pela comunidade são os dois últimos, do Koenig e do Stroustrup.
-
01/09/2010 13:42:58 |200.217.114.xxx| Ottavio

Muito boa a indicação desses livros.
Amigo, eu queria saber o seguinte: eu já tenho o C++ Como programar, 5ª edição. Se eu lê-lo e fizer todos os exercícios com muita dedicação eu já posso partir para a segunda etapa, ou seja, comprar os livros do "Para quem já sabe C++" como você sugeriu? Vc acha que apenas o livro dos Deitel dá conta para eu ser "aprovado" na primeira etapa ("Para quem está começando"
?
-
01/09/2010 13:48:46 | Vinícius Godoy de Mendonça

Sim, a partir do momento que você se sentir confortável com a sintaxe da linguagem, pule para a segunda etapa.
-
11/10/2010 17:32:25 |186.212.37.xxx| Victor - Obrigado.

http://www.guj.com.br/posts/list/221126.java
Obrigado pela recomendação no link acima, já percebi que valeu a pena.
-
28/10/2010 21:28:12 |189.101.243.xxx| Lucas Rinaldi - Dúvida

Amigo, estou pensando em comprar o livro do Deitel, queria saber se estudando todo ele eu já consigo ter uma base pra aprender a área de jogos?
Abraço!
-
29/10/2010 07:04:22 | Vinícius Godoy de Mendonça - Deitel

Consegue sim, o livro é muito bom. Entretanto, você terá uma boa base de C++. Ele não fala de jogos.
Com essa base, você poderá seguir um tutorial como o do lazyfoo ou os encontrados nesse site.
-
17/02/2011 21:30:30 |200.165.239.xxx| Carolina Fantini - Dúvida

Bom, eu to querendo fazer um emulador de Ragnarök Online usando engenharia-reversa, mas não sei se uso C++ com Lua ou C++ com JS.
Pode me dar um help ?!
-
28/05/2011 18:03:12 |187.11.107.xxx| Wanderson

Vinícius aonde eu posso conseguir este livro C++ Como Programar, Deitel? E se ele é em português.
-
29/05/2011 07:31:01 | Vinícius Godoy de Mendonça

Ele é em português sim. E está disponível em praticamente qualquer livraria. Na internet, você pode encontra-lo no submarino, FNAC e eu já vi até nas Lojas Americanas.
Dica: A última edição costuma a ser muito cara, compre uma edição anterior.
-
06/06/2011 10:04:49 |189.85.128.xxx| Gstavo Machado Broering

A última edição em português seria a 5ª?
Nada justifica o preço de R$ 320,00 em um livro de 5 anos atrás e que custa US$ 42,00 na Amazon!
Incluindo frete + impostos o mesmo sai por menos de R$ 100,00, 1/3 do valor!!
Mesmo importando a última edição. sai "meros" R$ 200,00, já contando com frete e impostos!Para quem sabe inglês, fica a dica!
Para quem não sabe, fica a dica de começar a aprender!
-
06/06/2011 10:23:51 | Bruno Crivelari Sanches

Importação de livros não tem impostos, vai ser USS42 + frete, não vai chegar nem perto de 200 reais.
Para quem não sabe inglês tai uma boa dica, o que você economiza com livros desatualizados e com erros de tradução, você usa para pagar o curso
.T+
-
06/06/2011 10:34:28 |189.85.128.xxx| Gustavo Machado Broering

Desculpe, o imposto que eu quis dizer era o IOF. Esqueci de especificar
E 200 reais sai a 8ed (última), essa custa US$ 100, mesmo assim sendo mais em conta
-
07/06/2011 23:39:26 |200.158.46.xxx| Wanderson

Vou ver se eu consigo comprar um usado mesmo, não tenho todo esse dinheiro.=/
-
21/08/2011 22:01:53 |189.81.106.xxx| Vinícius

Com o novo padrão vindo, o C++0X, ainda compensa ler estes livros introdutórios ou esperar até lançarem algum mais atualizado com este novo padrão?
-
21/08/2011 22:10:08 | Vinícius Godoy de Mendonça

Oi Chará,
Compensa sim, pois o basicão da linguagem quase não se altera. Você pode facilmente pegar um livro depois que só explique as mudanças e se atualizar para o C++11.
Um livro atualizado desses básicos deve demorar um bocado para aparecer, principalmente em português.
-
21/08/2011 22:16:50 |189.81.106.xxx| Vinícius

Obrigado pela resposta, vou decidir então qual destes livros eu compro.
-
21/08/2011 22:18:26 | Vinícius Godoy de Mendonça

A wiki americana tem um ótimo sumário das mudanças, com exemplos:
http://en.wikipedia.org/wiki/C%2B%2B0x
-
06/10/2011 10:50:21 |200.18.170.xxx| sergio rodrigues - Vale a pena C++ e duvidas livro do bueno

Vinicius primeiramente parabéns pelo site e pelo seu trabalho.
Gostaria de saber se vale a pena investir hoje em C++, pois ja estudo ela na faculdade e gostaria de especializar com esses livros que vc colocou, mas tenho medo de entrar de cabeça em uma coisa que depois fique para trás, ou que não tenha emprego mercado e dai eu tenha que partir para outra linguagem e começar do zero de novo. Fico na duvida com relação a outras linguagens como Java e .net, e tenho interesse em Python também, quero investir em c++ com foco em sistemas distribuidos e inteligencia artificial inclusive se vc puder postar livros bons de IA, foram o ja conhecido do Norvin.
Duvida com relação ao livro do bueno pagina 317 - Executando e enviado comandos para outro programa, não consigo funcionar o exemplo dele erro na linha >> opfstream, vc tem alguma ideia, existem algum comando novo, ja procurei no google e não achei nada consistente dessa opfstream.
-
06/10/2011 11:02:24 | Bruno Crivelari Sanches

Sobre investir em C++, é uma boa, existe mercado sim e muito e em compensação é um mercado geralmente mais interessante, em grande parte concentrado em sistemas embarcados e mercado financeiro. Todos com grande foco em desempenho e códigos otimizados, então se gosta de escovar bits é uma boa.
Hoje aparentemente a parte mais forte de TI é WEB e nessa parte você vai encontrar C++, se quer ir para esse mercado, então esqueça.
Agora sobre investir numa linguagem e depois ter que aprneder tudo de novo, olha, só se você apenas decorar comandos da lnguagem. Se você sabe programar, linguagem é apenas um meio e não existo isso de aprender tudo de novo ao trocar de linguagem.
T+
-
06/10/2011 13:32:17 | Vinícius Godoy de Mendonça

A maior parte dos sistemas industriais ainda é desenvolvida em C++. Junte isso aos sistemas de caixinha, jogos e hardware, e você vai ver que o mercado é quase tão grande quanto o de linguagens web.
Porém, é um mercado diferente. A indústria exige outros tipos de conhecimento (programação windows, sistemas de tempo real, protocolos de comunicação, etc.) dependendo da área que você queira atuar com o C++.
A oferta de emprego é um pouco mais escassa, mas as vagas costumam a ser mais bem remuneradas, justamente por saberem que o profissional de C++ costuma a ter uma qualificação maior.
-
09/10/2011 19:13:51 |187.110.168.xxx| Sidney Bruno - Iniciante

Eu sei absolutamente NADA sobre esse assunto! Mas quero aprender, e graças a esse tutorial eu sei por onde começar!
Bom trabalho!!
-
29/11/2011 08:08:42 |81.193.128.xxx| Harry ramos

Olá pessoal estou no meu segundo ano do curso de informática e o meu professor de Linguagem de Programação pediu-me para fazer um projecto e eu queria fazer um projecto sobre gestão de uma biblioteca. Agradecia muito se me ajudassem
-
29/11/2011 09:12:04 | Bruno Crivelari Sanches

Nosso enfoque aqui é no desenvolvimento de jogos, para outros assuntos relacionados a C/C++, recomendo o grupo CCPPBrasil: https://groups.google.com/forum/#!forum/ccppbrasil
-
05/01/2012 22:23:38 |186.214.232.xxx| Iuri

Acabei de achar esse site por um post na GUJ, que achei pelo google.
Muito bons os livros. Uma informação, há, em inglês, uma copia do livro do Deitel que vem gratuitamente em um programa de C++ (acho que é o da microsoft).
-
01/02/2012 14:04:27 |201.88.196.xxx| Adriano S. Lima - Adriano S. Lima

Minha dúvida é a seguinte, peguei muito material da linguagem C, mais achei o site daqui, olhando bem fiquei na dúvida se aprendo C ou C++?
Se começo já com o Visual C++?
-
01/02/2012 15:28:46 | Vinícius Godoy de Mendonça

Depende muito do seu foco.
Você quer programar firmware e software embarcado? Vai estudar engenharia da computação ou engenharia eletrônica? CQuer fazer jogos e aplicações comerciais? C++
-
01/02/2012 22:17:17 |201.88.196.xxx| Adriano S. Lima - Lima

Vinícius, obrigado pelo sua orientação !
Seria mais aplicações comerciais, jogos depois um pouco a frente.
Então Visual C++ é mais indicado para iniciante?Obrigado
-
02/02/2012 06:22:32 | Vinícius Godoy de Mendonça

Não. C é mais indicado para aplicações de baixo nível, como firmwares.
Pode seguir esse roadmap tranquilo.
-
02/02/2012 21:03:27 |189.34.82.xxx| Paulo - Programação de imagem

Vinícius,
tenho lido algumas ótimas "dicas" de java, sou novato em java, deixei a programação no dataflex, cobol em 1993. muitíssimo obrigo.
amigo, sou de ctba e gostaria de trocar figurinhas com algum programador que entenda muito de manipulação de imagem (localização de obejtos, áreas, etc). Tem alguém para indicar.
obrigado.
Parabéns por compartilhar seu vasto conhecimento em programação.











Æ!!
Bem legal o post!
Gostaria de saber se existe bons materiais on-line, por que vi que a grande maioria das referências que você postou são livros e etc.
Indica boas referências para conteúdo online?
Há braços