I am a college student in US with a major in the mathematics. I will soon be starting the undergraduate research in the computer security and complexity theory, which uses the C++ in the programming aspect. I am very new to the programming and its languages, but I am very eager and motivated to learn C++ to the point where I can be very competent. I always learn the subjects best with the books, so I am going to learn C++ with my method. Could you recommend two books on C++, one as a introductory, first-time learning to C++ and another one as a comprehensive, detailed reference for C++?
As for the beginning books, I see a frequent recommendation on "Programming: Principles and Practice using C++", "C++ Primer", and "Accelerated C++" Practical Programming by Examples", but I am not sure which is the best one to start.
Honestly I hardly ever purchase books for computer programming anymore. The book is outdated not to soon after I buy it, and there are plenty of free programming e-books on the net.
Books that are always great are ones that do not rely too much on what language is used. For example a book on algorithms is good no matter what language you eventually settle on using down the road.
I have this one on my shelf, so does this blogger, and many other students I know kept this book after selling their books: http://www.eriwen.com/books/best-algorithms-book/
There are also some video lectures that accompany that book. http://www3.cs.stonybrook.edu/~algorith/video-lectures/
The programming challenges book is really awesome for preparing for the ICPC http://icpc.baylor.edu/
Those competitions are some of my favorite memories of being a CS student. In fact, I am still involved every fall as an assistant coach to help the new students prepare. Be sure to ask the CS professors if your college can participate! The competitions can be a fun and challenging way to learn programming, and they look good on a future resume.
> one as a introductory, first-time learning to C++
> I see a frequent recommendation on "Programming: Principles and Practice using C++",
> "C++ Primer", and "Accelerated C++" Practical Programming by Examples", but I am not sure which is the best one to start.
Thank you very much for the helpful advice! I followed the advice and purchased "The C++ Programming Language" book but I am still looking for the introductory level. Both "C++ Primer" and "Programming: Principles and Practice Using C++" look very good to me, but I heard that The basic programming knowledge is to be expected, which I do not have. I also need to pick up C++ in a timely manner (starting the undergraduate research at the end of this August), but those two books are rather thick......I also like "Jumping into C++", "Starting Out with C++: From Control Structures to Objects", and "Accelerated C++: Practical Programming by Examples". I am worried abiut choosing the wrong book.
> Both "C++ Primer" and "Programming: Principles and Practice Using C++" look very good to me,
> but I heard that The basic programming knowledge is to be expected, which I do not have.
From the preface, 'Programming: Principles and Practice Using C++, 2nd Edition'
This book is for someone who has never programmed before but is willing to work hard to learn.
Are you completely new to programming? If you've never programmed before, why not learn in modern C++?
Programming: Principles and Practice Using C++, 2nd Ed. is an introduction to programming ... innumerable readers around the world, have learned programming and launched their careers using this book -- and modern C++.
Programming: Principles and Practice Using C++ (Bjarne Stroustrup) (updated for C++11/C++14)
An introduction to programming using C++ by the creator of the language. A good read, that assumes no previous programming experience, but is not only for beginners.