In just one hour a day, you’ll have all the skills you need to begin programming in C++. With this complete tutorial, you’ll quickly master the basics, and then move on to more advanced features and concepts. Completely updated for the C++14 standard, with a preview of C++17, this book presents the language from a practical point of view, helping you learn how to use C++ to create faster, simpler, and more efficient C++ applications.
Master the fundamentals of C++ and object-oriented programming
Understand how C++ features help you write compact and efficient code using concepts such as lambda expressions, move constructors, and assignment operators
Learn best practices and avoid pitfalls via useful Do’s and Don’ts
Learn the Standard Template Library, including containers and algorithms used in most real-world C++ applications
Test your knowledge and expertise with exercises at the end of every lesson
Learn on your own time, at your own pace:
No previous programming experience required
Write fast and powerful C++ programs, compile the source code, and create executable files
Learn object-oriented programming concepts such as encapsulation, abstraction, inheritance, and polymorphism
Use the Standard Template Library’s algorithms and containers to write feature-rich yet stable C++ applications
Learn how automatic type deduction helps simplify C++ code
Develop sophisticated programming techniques using lambda expressions, smart pointers, and move constructors
Master the features of C++ by learning from programming experts
Learn C++ features that allow you to program compact and high-performance C++ applications
Preview what’s new in C++17
Contents at a Glance
Part I: The Basics
Lesson 1: Getting Started
Lesson 2: The Anatomy of a C++ Program
Lesson 3: Using Variables, Declaring Constants
Lesson 4: Managing Arrays and Strings
Lesson 5: Working with Expressions, Statements, and Operators
Lesson 6: Controlling Program Flow
Lesson 7: Organizing Code with Functions
Lesson 8: Pointers and References Explained
Part II: Fundamentals of Object-Oriented C++ Programming
Lesson 9: Classes and Objects
Lesson 10: Implementing Inheritance
Lesson 11: Polymorphism
Lesson 12: Operator Types and Operator Overloading
Lesson 13: Casting Operators
Lesson 14: An Introduction to Macros and Templates
Part III: Learning the Standard Template Library (STL)
Lesson 15: An Introduction to the Standard Template Library
Lesson 16: The STL String Class
Lesson 17: STL Dynamic Array Classes
Lesson 18: STL list and forward_list
Lesson 19: STL Set Classes
Lesson 20: STL Map Classes
Part IV: More STL
Lesson 21: Understanding Function Objects
Lesson 22: Lambda Expressions
Lesson 23: STL Algorithms
Lesson 24: Adaptive Containers: Stack and Queue
Lesson 25: Working with Bit Flags Using STL
Part V: Advanced C++ Concepts
Lesson 26: Understanding Smart Pointers
Lesson 27: Using Streams for Input and Output
Lesson 28: Exception Handling
Lesson 29: Going Forward
Part VI: Appendixes
Appendix A: Working with Numbers: Binary and Hexadecimal
Appendix B: C++ Keywords
Appendix C: Operator Precedence
Appendix D: ASCII Codes
Appendix E: Answers