Going beyond first C++ book

Started by
10 comments, last by Nervo 20 years, 10 months ago
Okay, my debut into C++ has me using the book "C++ Primer Plus" by Stephen Prata. I was wondering from those of you that have gone well past the first couple of books and possibly have used Prata''s book what is a good second book for C++ without any particular emphasis on gaming but continuing to learn the core language itself? I wanted to jump to "Programming Windows" by Petzold, however I am not sure if jumping to API''s after finishing C++ Primer Plus is a wise choice or not. So in other words, any recommendations from experienced c++ users as to what is a good sequence of books to use and where "Programming Windows" fit in the sequence based on their invaluable experience?
Well, R2D22U2..
Advertisement
oh well, I guess I''ll have to take some chances
Well, R2D22U2..
Bjarne Stroustrup''s book, The C++ Programming Language, will help you to master the language.

---------------------------------------------------
laziness is the foundation of efficiency
retrospiral.net | llamas! | megatokyo | FreeBSD | gamedev.net | google
laziness is the foundation of efficiency | www.AdrianWalker.info | Adventures in Game Production | @zer0wolf - Twitter
Herbert Schildt: "C++: The Complete Reference" was always good. It is more of a ''book'' than a reference, in that its meant to be read generally from cover to cover. Its also an older book so you can probably find it for very cheap. I bought it at Half Price Books for $10.



Appreciate the advice zer0wolf. It seems almost unanimous among many that completing this book is the key. I apologize if this topic has drug through the mud a million times but the search engine on this site is really slow and kinda sucks.

EDIT: Thanks haro I'll look into that one also.

[edited by - nervo on June 18, 2003 1:10:36 AM]

[edited by - nervo on June 18, 2003 1:11:12 AM]
Well, R2D22U2..
Here''s my 2 cents.

Well it depends, I think if you want to do games.
If you mastered the material in one book your more than ready.
I''m not C++ guru myself so heed my voice with caution, but
I think if you got the basics such as inheritance, polymorphism, classes, opinters, linked list, arrays, binary trees, thats pretty good. The rest is syntax. C is different however. I would start learning dx or opengl, takes classes as well. C++ is just a language you only need to know how to use it, I''d concentrate on what you want to use it for, if you want to do graphics learn opengl or dx. Also if you know how you can use C to create classes , not just structs with table but using table pointers and making functions, I think thats good. The rest is just syntax that you can learn along the way.
Windows programming is very alot of work not elegant but it makes windows work. Its good to know the basics but unless you want to do hardcore window type applications like business I''d think just learning how to setup an game screen is good enough, and knowing about coms and call back and those concepts.

Also learnign threads is cool 2 as well mutex and critical sections, if you know all those concepts your ready to do game programming I believe or are more than ready.
Also I believe you should learn the concepts, not just opengl but how opengl works using matrices to put a 3d object and put it onto a 2d screen. Actually most books don''t even have that. If you want to get into graphics i can recommend a few good opengl books.




games rule
I hear you kenjin. I seem to like to learn sometimes simply for the sake of learning even though it may go beyond pragmatic purposes. I am a CS major and I start upper division by early next year where I will get knee deep in the details, but I still like to learn on my own in the meantime. Damn bachelors degrees! They make you take 2 years of assorted classes before you get to the stuff you thirst for. Its all a test of endurance!
Well, R2D22U2..
quote:Original post by Nervo
Okay, my debut into C++ has me using the book "C++ Primer Plus" by Stephen Prata.


I read that book and as it was the first C++ book I'd read I thought it was okay. Actually now that I've read many books on C++ and design I've realised that it is quite possibly the worst book I've read (not just in the field of computer programming). He comes towards C++ from the direction of C (which is also what I was doing). He has no idea about the purpose of classes, about object orientation, abstraction, valid uses of polymorphism, even encapsulation. It set me back for years so I was just using C++ like a C with a few extra bits. It crippled me.

Books I'd recommend (in rough order of difficulty or usefulness):

Accelerated C++ - Koenig and Moo - to give you a good overview of the language and help you understand how to use the language well including the standard library.
Effective C++ on CD - Scott Meyers. Cheap, readable and browsable style guide. Has similar friendly style to Prata but is actually telling you good things.
The C++ programming language 3rd edition - Bjarne Stroustrup - the horses mouth and a good read, once you're off the ground a bit.
Exceptional C++ and More Exceptional C++ - Herb Sutter of guru of the week fame. Read all of those gotw links if you don't buy the books.
Design Patterns - Eric Gamma, John Vlissides et al. - Will help get your head around good and commonly recuring patterns.

[edited by - petewood on June 18, 2003 1:01:20 PM]
Also, when you''re ready:

"The C++ Standard Library" by Josuttis
"C++ Templates" by Josuttis & Vandevoorde

The STL book is awesome. Concise, clear and full of examples that don''t make your head hurt and give you the urge to put the author through an industrial grinder (like Stroustrup).

(So is the template book atually, but there isn''t as much "meat" in it to sink your teeth into)




My Website: ai-junkie.com My Book: AI Techniques for Game Programming

Thanks for the recommendations petewood and fup.

Just in case you read this petewood: For me it is hard to make a decision on which is really the optimal text for the first read. C++ primer plus got so many good reviews at amazon as well as accelerated c++ and others. What sold me on this book was the review exercises that are placed at the end of each chapter, similar to classroom textbooks. With that said, I wish most books out there had that.

So, unless tons of people respond to this post confirming that the author follows a pattern that is more C related and not good for OOP overall, then I''ll keep using it. BTW, I''m using the 4th edition from 2001.
Well, R2D22U2..

This topic is closed to new replies.

Advertisement