Jump to content
  • Advertisement
Sign in to follow this  
Botelho

Best place to learn C++

This topic is 990 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello I am 17 and want to learn c++ and eventually become a game developer what do I need and where should I learn it

Share this post


Link to post
Share on other sites
Advertisement
I don't doubt frob's recommendations are good, but I think that's too much reading. Pick one book, learn a little and practice a lot. Challenge yourself to write interesting programs and learn the language as you need it. After a few weeks of hacking around, you can go and read some more. Keep alternating practice and reading, but I think the majority of the time should be spent practicing.

Share this post


Link to post
Share on other sites
Yes, that reading list could easily take over a year. The first one alone should be enough to get you started, the others are there to propel toward mastery of the language.

Working through all of those books -- along with applying the details as you go -- will put you far beyond many who are working in industry.

Share this post


Link to post
Share on other sites

Programming is an art. You learn it by practicing it, no other way. A good book is great to get you started, and as you become better you can get intermediate and advanced books to refine your skills or develop new ones, but to become a programmer you need to write programs. If you have the money I really suggest taking classes.

Share this post


Link to post
Share on other sites

I personally find YouTube videos very helpful as I'm a visual learner - there are plenty of playlists on there.

HandmadeHero is quite good, though it's mostly C it is game-oriented unlike a lot of other C++ playlists.

 

I'm recommending this as an addition to the books listed above - not a replacement!

Share this post


Link to post
Share on other sites

Honestly, here's what I would do.

 

1. Learn two languages that are not C/C++.  Start with Javascipt, Python, Java, C#, or something more forgiving until you understand the basics.  Although I learned on C, I would not recommend it.  Make some simple programs and simple games.  Make sure you learn and understand object oriented programming: Composition, Inheritance, Abstraction, and Polymorphism.  

 

2.  Read this:

Learn C the Hard Way: Practical Exercises on the Computational Subjects You Keep Avoiding (Like C) (Zed Shaw's Hard Way Series) 

by Zed A. Shaw 

Link: http://amzn.com/0321884922

 

3.  You're done.  C++ will just be learning the syntax and figuring out the weird way classes work, and fighting with templates (which I still do, so I'm not sure you ever actually "learn" it)

Edited by Glass_Knife

Share this post


Link to post
Share on other sites

To be a good C++ programming you need to understand constructors, destructors, inheritance and pointers (as a bare minimum).  Once you know how those things work then start coding.  Start small and simple like creating text based games.  ie build choose your own adventure type games where text is displayed on the screen and you need to make a choice with the keyboard to decide which path to take.  Planing and executing on a full game (even a simple one like this) can be a big task and it will teach you how to structure code so that you can reuse parts.

 

Once you are comfortable working with char's, int's, std::strings start to investigate the other parts of the standard template library.  vectors, maps, queues, lists etc.  Then try building a 2d text based game like tick-tac-toe or connect 4.  This will teach you how to program things that uses arrays.

 

Now you can start looking at graphics, to improve upon the previous games that you have under your belt.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!