A fast-paced, thorough introduction to modern C++ written for experienced programmers. After reading C++ Crash Course, you’ll be proficient in the core language concepts, the C++ Standard Library, and the Boost Libraries.
C++ is one of the most widely used languages for real-world software. In the hands of a knowledgeable programmer, C++ can produce small, efficient, and readable code that any programmer would be proud of.
Designed for intermediate to advanced programmers, C++ Crash Course cuts through the weeds to get you straight to the core of C++17, the most modern revision of the ISO standard. Part 1 covers the core of the C++ language, where you’ll learn about everything from types and functions, to the object life cycle and expressions. Part 2 introduces you to the C++ Standard Library and Boost Libraries, where you’ll learn about all of the high-quality, fully-featured facilities available to you. You’ll cover special utility classes, data structures, and algorithms, and learn how to manipulate file systems and build high-performance programs that communicate over networks.
You’ll learn all the major features of modern C++, including:
Fundamental types, reference types, and user-defined typesThe object lifecycle including storage duration, memory management, exceptions, call stacks, and the RAII paradigm Compile-time polymorphism with templates and run-time polymorphism with virtual classesAdvanced expressions, statements, and functionsSmart pointers, data structures, dates and times, numerics, and probability/statistics facilitiesContainers, iterators, strings, and algorithmsStreams and files, concurrency, networking, and application development
With well over 500 code samples and nearly 100 exercises, C++ Crash Course is sure to help you build a strong C++ foundation.
From the Publisher


‘Comprehensive’
“A comprehensive book, both in size (over 700 pages, taking 5 months to review) and breadth of coverage . . . All in all, highly recommended.”
—ACCU

‘Highly Effecient’
“Thanks to the really good writing style and enough examples, I gained some new insights into how the language is supposed to be used properly, as well as a drive to dive deeper into the intricacies of it. I admire how the author of the book was able to include the most important knowledge in such a highly efficient way to learn.”
—InnateCoder

‘My Favorite’
“I have sampled a number of books on this topic and they all suffer some limitations, this one is my favorite so far.”
—David Weiseth, Amazon reviewer

About the Author
Josh Lospinoso, PhD, is an entrepreneur who served 15 years in the US Army. As a cyber officer, Josh wrote dozens of infosec tools and taught C++ to junior developers. He has spoken at a wide range of conferences, published over 20 peer-reviewed articles, is a Rhodes Scholar, and holds a patent. In 2012, he co-founded a successfully acquired security company. He keeps a blog and is an active contributor to open source software.
Who Should Read This Book
This book is intended for intermediate to advanced programmers already familiar with basic programming concepts. If you don’t specifically have system programming experience, that’s okay. Experienced application programmers are welcome.

No Starch Press has published the finest in geek entertainment since 1994, creating both timely and timeless titles like Python Crash Course, Python for Kids, How Linux Works, and Hacking: The Art of Exploitation. An independent, San Francisco-based publishing company, No Starch Press focuses on a curated list of well-crafted books that make a difference. They publish on many topics, including computer programming, cybersecurity, operating systems, and LEGO. The titles have personality, the authors are passionate experts, and all the content goes through extensive editorial and technical reviews. Long known for its fun, fearless approach to technology, No Starch Press has earned wide support from STEM enthusiasts worldwide.
Publisher : No Starch Press
Publication date : September 24, 2019
Edition : Illustrated
Language : English
Print length : 792 pages
ISBN-10 : 1593278888
ISBN-13 : 978-1593278885
Item Weight : 2.89 pounds
Dimensions : 7 x 1.55 x 9.25 inches
Best Sellers Rank: #129,117 in Books (See Top 100 in Books) #11 in C++ Programming Language #14 in Object-Oriented Design #19 in Computer Systems Analysis & Design (Books)
Customer Reviews: 4.6 4.6 out of 5 stars (351) var dpAcrHasRegisteredArcLinkClickAction; P.when(‘A’, ‘ready’).execute(function(A) { if (dpAcrHasRegisteredArcLinkClickAction !== true) { dpAcrHasRegisteredArcLinkClickAction = true; A.declarative( ‘acrLink-click-metrics’, ‘click’, { “allowLinkDefault”: true }, function (event) { if (window.ue) { ue.count(“acrLinkClickCount”, (ue.count(“acrLinkClickCount”) || 0) + 1); } } ); } }); P.when(‘A’, ‘cf’).execute(function(A) { A.declarative(‘acrStarsLink-click-metrics’, ‘click’, { “allowLinkDefault” : true }, function(event){ if(window.ue) { ue.count(“acrStarsLinkWithPopoverClickCount”, (ue.count(“acrStarsLinkWithPopoverClickCount”) || 0) + 1); } }); });
12 reviews for C++ Crash Course: A Fast-Paced Introduction
Add a review
Original price was: $59.99.$45.65Current price is: $45.65.


mei052 –
Does exactly what it says, and does it well.
On the book’s web site (found at ccc “dot” codes) it says the following: “C++ Crash Course is a fast-paced, thorough introduction to Modern C++ for experienced programmers.” And that is exactly right. If you are already comfortable in at least one other language, know your way around an IDE, compiler, linker, etc., and need to get up to speed in current C++, then you will really like this book. If you are coming from C, you will love it. I’m an engineer, and have been writing software for decades in several languages. Long ago (’90’s) I even wrote some things in C++. But a lot has changed, and I was looking for something to bring me up to date on the language today. This book fit the bill perfectly. Also, the book’s web site has source code for examples & exercise solutions, (also on git) and best of all a very thorough Errata. Amazon sent me a second printing, which is nice because a lot of typos were fixed in the second printing. But if you have a 1st printing – no worries. Just print out the errata and get out your pencil!
Facundo Flores –
Excellent book.
I’m a self-taught, beginner developer, with minor projects done for friends and family (I mean, no money involved haha). As a passionate man, I wanted a book that wasn’t plain theory and allowed me to learn while having fun, as I find intellectual challenges very appealing. This book was it. It explains concepts, with examples everywhere and then it’s just “now you”. It encourages you to practice, to make “real-world” programs piece by piece until it works as expected. It makes you think until you laugh because you understood how flexible C++ is and how easy…it’s just great. It’s an incredible language and a great book.Part I takes you through C++ fundamentals. Beware that it’s not an introductory book as it assumes you already know some fundamental stuff (for example, what an object is). Rather, it shows you the language specification and features with nice examples.Part II is dedicated to libraries and frameworks and the way you can use them to enhance your code.
abhijeet –
Not “fast-paced” but still very good
I purchased a paper copy of this book on Amazon after reading a few chapters on Safari books online. For context, I am a professional python programmer who was only briefly exposed to C/C++ many years ago in school. I needed a quick refresher to C++ because of project needs at work, and this book has met my expectations.The author is lying about the “fast-paced introduction” bit, but that is not a bad thing. This book is twice as large as “Accelerated C++” by Koenig and Moo which I am also reading in parallel. Yet I prefer this book by a wide margin. Josh’s writing is quite reader-friendly. He takes a storytelling approach and doesn’t dive too deep into committee standards or history. That way the concepts are easier to remember and follow a nice logical sequence. Code examples all make sense and there are no errors so far – I’ve been compiling everything with Xcode and playing around a bit.Only thing I do not like is the margins in the print copy. There is no space on the right hand side to take notes, and you have to strain the binding hard to read the end of sentences on the left hand side. This might compromise the integrity of binding soon. In retrospect I should have kept reading on Safari.
David Weiseth –
Nice Job!
I am not smart enough to say I can blow through this book in short order, but I really appreciate the perfect balance of treatment. I have sampled a number of books on this topic and they all suffer some limitations, this one is my favorite so far. I am not a beginner programmer, but not a C++ programmer, and I need this to write the low level high performant code I need for my interest space. I plan to read some other books on high performance and Data Oriented programming, but this book is a great launching pad of the fundamentals.Two thumbs up, take your time to distill the gems in this book. The only detraction is the Title “Crash” probably is not not in any way appropriate, this is just a great book on C++ period. My sincere thanks to the author, God bless!
Dmitriy Litvak –
Eating BehemoC++ after 1998
I think it’s good fast-paced intro to modern C++ for experienced programmers. The book is definitely missing some details: e.g. thread life cycle, streams, etc. Given the online resources, the book is too bloated (4 stars)—I’m an experienced programmer with no prior modern C++ experience.I have coded C++ 98 in school, so I have had some exposure to C++ concepts. I thought Deitel was superb then. I’ve tried Bjarne Stroustrup classical opus, but I have little patience for the amount of detail on each topic; best left for reference?
Wil C –
Focused, Comprehensive, Modern (cpp20+)
Great for developers with some experience in any other compiled language (eg. C, Go, Java, Rust, etc).Just enough content on each topic to make you effective without overwhelming.Lots of modern idiomatic advice.The more I read, the more impressed I am.
Jim W. –
Perfectly Paced C++ Book for an intermediate programmer
I started to teach myself C++ using Stroustrup’s Programming: Practice and Principle’s, but only got through about half of it, skipping the GUI portion.C++ crash course is a much more focused look into the language. The examples are much smaller minimum working versions, rather than giant projects that tend to hide the new concept being introduced. As a result, it’s a great book to teach the language, but not to teach programming from scratch. You need to have some experience to know how the tools can solve a particular problem.I’m only 1/3 of the way through, but so far I like the layout. It starts out with the bare langauge features, and doesn’t get into the standard library until the second half of the book. This really helps to appreciate the benefits libraries provide.
José DR –
Es un buen libro para los que iniciamos en el mundo de la programación.
D. Sawyer –
Great book for beginners as well as programmers proficient in other languages.
Isabel Sampaio –
muito bom
Eros –
The book does what it promises and it does it well: a fast-pace tour of c++ with examples and explanations. It advices the reader on the use of shortcuts (e.g. use of printf instead of std::cout) to ease the explanations. It’s not bad, and the author has a clear reason to do so to introduce concepts. I like the language, and I like this book. There are online resources too, if you want to practice a lil bit. Overall, I’m highly satisfied and I hope the author publishes a new version in the future with more examples and part2.
The Truth Seekers –
Kitap C++’a giriş yapacaklar için çok önemli bir kaynak. İçerik olarak beni gayet tatmin etti. C++ ile oyun geliştirmek gibi bir düşünceniz var ise öncelikle bu kitabı okumanızı tavsiye ederim. Bu konuda ihtiyacınız olan bilgiyi size veriyor. Ben C++ ile oyun yazmak için aldım bu kitabı ama tabii ki, siz bu dili öğrenmek için bu kitabı gönül rahatlığı ile alabilirsiniz. Dietel’in kitabını da okumuştum ancak Dietel bana çok detaylı, sıkıcı ve karmakarışık geldi ama bu kitap gayet güzel tane tane ve okunabilir bir punto büyüklüğü ile sizi bunaltmıyor.