Read more
Ready to learn programming with less effort and more fun? Then do it the lazy way! C++26 for Lazy Programmers uses humor and fun to make you actually willing to read and eager to do the projects as you master the popular and powerful C++ language.
Along the way it introduces features from the new C++26 standard including increased support for compile-time computation with constexpr and static_assert, as well as contracts, and covers ranges, views, move semantics, format strings, smart pointers, lambda functions and concepts (template parameter requirements), and provides brief introductions to coroutines and lazy evaluation.
With this unique method, you ll stretch your abilities with a variety of projects, including your own C++ arcade game. You'll construct your own classes, templates, and abstract data types. After reading and using this book you ll be ready to build real-world C++ applications and game projects on your own.
What You Will Learn:
- Explore the brand-new C++26 standard
- Navigate graphics and games using SDL and SSDL wrapper
List of contents
Chapter 1: Getting started.- Chapter 2: Images and sound.- Chapter 3: Numbers.- Chapter 4: Mouse, and if.- Chapter 5: Loops and text input.- Chapter 6: Algorithms and the development process.- Chapter 7: Functions.- Chapter 8: Functions, continued.- Chapter 9: Using the debugger.- Chapter 10: Arrays, spans and enum.- Chapter 11: Animation with structs and sprites.- Chapter 12: Building your own arcade game: input, collisions, and putting it all together.- Chapter 13: Standard I/O and file operations.- Chapter 14: Character arrays and dynamic memory.- Chapter 15: Classes.- Chapter 16: Classes, continued.- Chapter 17: Strings, and operators.- Chapter 18: String views, exceptions, move semantics, and O notation.- Chapter 19: Templates, including vector).- Chapter 20: Inheritance.- Chapter 21: Virtual functions and multiple inheritance.- Chapter 22: Linked lists.- Chapter 23: The Standard Template Library (STL) and functional-style programming.- Chapter 24: Functional-Style Programming, continued.- Chapter 25: Esoterica (recommended).- Chapter 26: Esoterica (recommended), continued.- Chapter 27: Esoterica (not so recommended).- Chapter 28: Building bigger projects.- Chapter 29: C.- Chapter 30: Moving on with SDL. Appendices A-G.
About the author
Will Briggs, PhD is a professor of computer science at the University of Lynchburg in Virginia. He has 30 years experience teaching C++, 18 of them using earlier drafts of this book, and about as many years teaching other languages including C, Javascript, LISP, Pascal, PHP, PROLOG, and Python. His primary focus is teaching of late while also active in research in artificial intelligence.
Summary
Ready to learn programming with less effort and more fun? Then do it the lazy way! C++26 for Lazy Programmers uses humor and fun to make you actually willing to read and eager to do the projects as you master the popular and powerful C++ language.
Along the way it introduces features from the new C++26 standard including increased support for compile-time computation with constexpr and static_assert, as well as contracts, and covers ranges, views, move semantics, format strings, smart pointers, lambda functions and concepts (template parameter requirements), and provides brief introductions to coroutines and lazy evaluation.
With this unique method, you’ll stretch your abilities with a variety of projects, including your own C++ arcade game. You'll construct your own classes, templates, and abstract data types. After reading and using this book you’ll be ready to build real-world C++ applications and game projects on your own.
What You Will Learn:
- Explore the brand-new C++26 standard
- Navigate graphics and games using SDL and SSDL wrapper
- Use common C++ compilers and their debuggers
- Apply “anti-bugging” techniques to fix common issues
- Follow best for becoming a productive programmer
- Create your own big projects, including a C++-based arcade game
- Leverage STL functions and classes for easy and efficient programming
- Handle Unicode (UTF-8) output
- Understand the uses and limits of views for efficiently pipelining data
- Construct core data types (strings, queues, vectors, linked lists) from scratch
- Understand the basics of C as a competing language
Who This Book Is ForAll who are new to C++, either self-learners or students in college-level courses.