Test your C++ programming skills by solving real-world programming problems covered in the book
Key Features
-
Solve a variety of real-world programming and logic problems by leveraging the power of C++17
-
Test your skills in using language features, algorithms, data structures, design patterns, and more
-
Explore areas such as cryptography, communication, and image handling in C++
Book Description
C++ is one of the most widely-used programming languages and has applications in a variety of fields, such as gaming, GUI programming, and operating systems, to name a few. Through the years, C++ has evolved into (and remains) one of the top choices for software developers worldwide. This book will show you some notable C++ features and how to implement them to meet your application needs. Each problem is unique and doesn't just test your knowledge of the language; it tests your ability to think out of the box and come up with the best solutions. With varying levels of difficulty, you'll be faced with a wide variety of challenges. And in case you're stumped, you don't have to worry: we've got the best solutions to the problems in the book. So are you up for the challenge?
What you will learn
-
Serialize and deserialize JSON and XML data
-
Perform encryption and signing to facilitate secure communication between parties
-
Embed and use SQLite databases in your applications
-
Use threads and asynchronous functions to implement generic purpose parallel algorithms
-
Compress and decompress files to/from a ZIP archive
-
Implement data structures such as circular buffer and priority queue
-
Implement general purpose algorithms as well as algorithms that solve specific problems
-
Create client-server applications that communicate over TCP/IP
-
Consume HTTP REST services
-
Use design patterns to solve real-world problems
Who This Book Is For
This book will appeal to C++ developers of all levels. There's a challenge inside for everyone.
Table of Contents
-
Math Problems
-
Language Features
-
Strings and Regular Expressions
-
Streams and Filesystems
-
Date and Time
-
Algorithms and Data Structures
-
Concurrency
-
Design Patterns
-
Data Serialization
-
Archives, Images, and Databases
-
Cryptography
-
Networking and Services