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