C++ Books

28 Feb 2021

[ c++  books  ]

Intro

Suggested in 2017 by Pavel Tsytovich, Expert on C++ from Luxoft

1. Learning C++ Best Practices by Jason Turner

Description

In this Learning C++ Best Practices training course, expert author Jason Turner will teach you how to write code that is more maintainable, simpler, and faster. This course is designed for users that already have a basic working knowledge of C++.

You will start by learning about expressions and statements, such as variable scopes and initialization. From there, Jason will teach you about resource management, including using raw pointers, managing resources automatically using resources handles and RAII, and using standard containers when interacting with C APIs. Finally, this video tutorial will leave you with a refresher on expressions and statements and resource management, as well as next steps.

2. Learning Boost C++ Libraries by Arindam Mukherjee

Description

Filled with dozens of working code examples that illustrate the use of over 40 popular Boost libraries, this book takes you on a tour of Boost, helping you to independently build the libraries from source and use them in your own code.

The first half of the book focuses on basic programming interfaces including generic containers and algorithms, strings, resource management, exception safety, and a miscellany of programming utilities that make everyday programming chores easy. Following a short interlude that introduces template metaprogramming and functional programming, the later chapters are devoted to systems programming interfaces, focusing on directory handling, I/O, concurrency, and network programming.

3. Boost C++ Application Development Cookbook by Antony Polukhin

Description

Boost libraries are developed by professionals, tested on multiple platforms and processor architectures, and contain reliable solutions for a wide range of tasks. This Cookbook takes you on a journey of simplifying the process of application development and guides you through writing perfect applications fast.

4. C++17 By Example : Practical projects to get you up and running with C++17 b Stefan Björnander

Description

Discover the impressive capabilities of C++ and learn the skills you need to implement it in real life Key Features Leverage the power of C++ language constructs to build effective software Learn about file handling and pointers Build visually appealing GUI by using the power of Qt5 Get a deeper understanding of how to program C++ for a specific purpose by implementing a Domain Specific Language Book Description C++ is a general-purpose programming language built with a bias towards embedded programming and systems programming. Over the years, C++ has evolved and is used to develop software for many different sectors. Given its versatility and robustness, C++is a wonderful language to start your coding journey with. This book covers exciting projects built in C++ that show how to implement the language in different scenarios. While developing these projects, you will not only learn the language constructs but also how you can use C++ to meet your software requirements. The book starts with a brief introduction to C++ language constructs where you will learn essential concepts that are required to understand the projects covered in the book. The first module will build a library management system that will teach you how to perform efficient file handling and use pointers in your software. To give you a taste of GUI programming, the next module will build graphical applications using Qt 5. You will then be introduced to game design in C++ and build two interesting games. The final module will teach you how C++ can be used to create a Domain Specific Language. After reading this book, you will have mastered core programming concepts in C++, and how to implement them effectively. What you will learn Create object-oriented hierarchies and how to compile, link, and execute a simple program Implement classes with linked lists, templates, inheritance, operator overloading, and exception handling Efficient file handling and pointer structures Dynamic allocation and deallocation along with marshmallowing Qt features, including menus, toolbars, caret handling, and more Implement a Domain Specific Language in C++ Who this book is for This book is for developers who would like to develop software in C++. Basic programming experience would be an added advantage.

Summary by Sergey Sotnikov, Lead Technical Expert from Luxoft:

This book describe new features of C++ 17 standard which are essential to know for all C++ developers and testers. C++17 is a major release, with over 100 new features or significant changes. Some of new features are Exception specifications, Fold expressions, Explicit deduction guides, Structured bindings, if/switch initializers. In C++17, the Standard Library has also added many useful new data types, several of which originated in Boost. Major compilers, including GCC, Clang, and MSVC, already support many of the changes. Start reading

5. Professional C++ by Marc Gregoire

Description

Professional C++ is the advanced manual for C++ programming. Designed to help experienced developers get more out of the latest release, this book skims over the basics and dives right in to exploiting the full capabilities of C++17. Each feature is explained by example, each including actual code snippets that you can plug into your own applications. Case studies include extensive, working code that has been tested on Windows and Linux, and the author’s expert tips, tricks, and workarounds can dramatically enhance your workflow. Even many experienced developers have never fully explored the boundaries of the language’s capabilities; this book reveals the advanced features you never knew about, and drills down to show you how to turn these features into real-world solutions. The C++17 release includes changes that impact the way you work with C++; this new fourth edition covers them all, including nested namespaces, structured bindings, string_view, template argument deduction for constructors, parallel algorithms, generalized sum algorithms, Boyer-Moore string searching, string conversion primitives, a filesystem API, clamping values, optional values, the variant type, the any type, and more. Clear explanations and professional-level depth make this book an invaluable resource for any professional needing to get up to date quickly. Maximize C++ capabilities with effective design solutions Master little-known elements and learn what to avoid Adopt new workarounds and testing/debugging best practices Utilize real-world program segments in your own applications C++ is notoriously complex, and whether you use it for gaming or business, maximizing its functionality means keeping up to date with the latest changes. Whether these changes enhance your work or make it harder depends on how well-versed you are in the newest C++ features. Professional C++ gets you up to date quickly, and provides the answers you need for everyday solutions.

Summary by Sergey Sotnikov, Lead Technical Expert from Luxoft:

This book describe new features of C++ 17 standard which are essential to know for all C++ developers and testers. C++17 is a major release, with over 100 new features or significant changes. Some of new features are Exception specifications, Fold expressions, Explicit deduction guides, Structured bindings, if/switch initializers. In C++17, the Standard Library has also added many useful new data types, several of which originated in Boost. Major compilers, including GCC, Clang, and MSVC, already support many of the changes.