Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds

You are pre-ordering this product

Modal Close icon
Since this is a ‘’ product, you are pre-ordering it and you will be able to download the eBook as soon as it is published in . The print book will ship upon publication, and delivery timing will depend on your location and selected shipping method (economy or premium).

Filter Results

Sort By

Arrow up

Product Type

Arrow up
(101)
(26)
(1)

Features

Arrow up
(55)

Publication Status

Arrow up
(98)
(3)
(98)

Tech Category

Arrow up
(101)
(86)
(39)
(25)
(17)
(14)
show more

Concept

Arrow up
(34)
(21)
(10)
(7)
(7)
(5)
show more

Tool

Arrow up
(11)
(5)
(4)
(4)
(2)
(2)
show more

Language

Arrow up
(63)
(5)
(3)
(3)
(1)
(1)
show more

Published Year

Arrow up
(1)
(3)
(13)
(5)
(6)
(7)
show more

Search Results for 'c++' (101 products)

sort Bestselling

Applied Filters

Clear all filters
  • Book Close
  • Available Close
    Coming Soon Close
  • Programming Close

Applied Filters

Clear all filters
  • Book Close
  • Available Close
    Coming Soon Close
  • Programming Close
More Product Details Close
Modern C++ Programming Cookbook
Master Modern C++ with comprehensive solutions for C++23 and all previous standards
Description
The updated third edition of Modern C++ Programming Cookbook addresses the latest features of C++23, such as the stacktrace library, std::expected and std::mdspan classes, the header, formatting library improvements, and updates to the ranges library. It also gets into more C++20 topics not previously covered, such as sync streams and source_location. The book is organized into practical recipes covering a wide range of real-world problems, helping you find the solutions you need quickly. You’ll find coverage of all the core concepts of modern C++ programming and features and techniques from C++11 through to C++23, meaning you’ll stay ahead of the curve by learning to incorporate the newest language and library improvements. Beyond the core concepts and new features, you’ll explore recipes related to performance and best practices, how to implement useful patterns and idioms, like pimpl, named parameter, attorney-client, and the factory pattern, and how to complete unit testing with the widely used C++ libraries: Boost.Test, Google Test, and Catch2. With the comprehensive coverage this C++ programming guide offers, by the end of the book you’ll have everything you need to build performant, scalable, and efficient applications in C++.
Read more
Feb 2024 816 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Marius Bancila
Purchase Options
eBook $38.99 $43.99
Paperback $54.99
VIEW PRODUCT
More Product Details Close
Modern CMake for C++
Effortlessly build cutting-edge C++ code and deliver high-quality solutions
Description
Modern CMake for C++ isn't just another reference book, or a repackaging of the documentation, but a blueprint to bridging the gap between learning C++ and being able to use it in a professional setting. It's an end-to-end guide to the automation of complex tasks, including building, testing, and packaging software. This second edition is significantly rewritten, restructured and refreshed with latest additions to CMake, such as support of C++20 Modules. In this book, you'll not only learn how to use the CMake language in CMake projects but also discover how to make those projects maintainable, elegant, and clean. As you progress, you'll dive into the structure of source directories, building targets, and packages, all while learning how to compile and link executables and libraries. You'll also gain a deeper understanding of how those processes work and how to optimize builds in CMake for the best results. You'll discover how to use external dependencies in your project – third-party libraries, testing frameworks, program analysis tools, and documentation generators. Finally, you'll gain profi ciency in exporting, installing, and packaging for internal and external purposes. By the end of this book, you'll be able to use CMake confi dently at a professional level.
Read more
May 2024 502 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Rafał Świdziński
Purchase Options
eBook $35.98 $39.99
Paperback $49.99
VIEW PRODUCT
More Product Details Close
C++ High Performance
Master the art of optimizing the functioning of your C++ code
Description
C++ High Performance, Second Edition guides you through optimizing the performance of your C++ apps. This allows them to run faster and consume fewer resources on the device they're running on without compromising the readability of your codebase. The book begins by introducing the C++ language and some of its modern concepts in brief. Once you are familiar with the fundamentals, you will be ready to measure, identify, and eradicate bottlenecks in your C++ codebase. By following this process, you will gradually improve your style of writing code. The book then explores data structure optimization, memory management, and how it can be used efficiently concerning CPU caches. After laying the foundation, the book trains you to leverage algorithms, ranges, and containers from the standard library to achieve faster execution, write readable code, and use customized iterators. It provides hands-on examples of C++ metaprogramming, coroutines, reflection to reduce boilerplate code, proxy objects to perform optimizations under the hood, concurrent programming, and lock-free data structures. The book concludes with an overview of parallel algorithms. By the end of this book, you will have the ability to use every tool as needed to boost the efficiency of your C++ projects.
Read more
Dec 2020
Full star icon Full star icon Full star icon Full star icon Full star icon 5
544 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Björn Andrist
Purchase Options
eBook $41.99 $46.99
Paperback $59.99
VIEW PRODUCT
More Product Details Close
Asynchronous Programming with C++
Build blazing-fast software with multithreading and asynchronous programming for ultimate efficiency
Description
As hardware advancements continue to accelerate, bringing greater memory capacity and more CPU cores, software must evolve to adapt to efficiently use all available resources and reduce idle CPU cycles. In this book, two seasoned software engineers with about five decades of combined experience will teach you how to implement concurrent and asynchronous solutions in C++. You’ll gain a comprehensive understanding of parallel programming paradigms—covering concurrent, asynchronous, parallel, multithreading, reactive, and event-driven programming, as well as dataflows—and see how threads, processes, and services are related. Moving into the heart of concurrency, the authors will guide you in creating and managing threads and exploring C++’s thread-safety mechanisms, including mutual exclusion, atomic operations, semaphores, condition variables, latches, and barriers. With this solid foundation, you’ll focus on pure asynchronous programming, discovering futures, promises, the async function, and coroutines. The book takes you step by step through using Boost.Asio and Boost.Cobalt to develop network and low-level I/O solutions, proven performance and optimization techniques, and testing and debugging asynchronous software. By the end of this C++ book, you’ll be able to implement high-performance software using modern asynchronous C++ techniques.
Read more
Nov 2024 424 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Javier Reguera-Salgado
Purchase Options
eBook $29.99 $33.99
Paperback $41.99
VIEW PRODUCT
More Product Details Close
Hands-On Design Patterns with C++
Solve common C++ problems with modern design patterns and build robust applications
Description
C++ is a general-purpose programming language designed for efficiency, performance, and flexibility. Design patterns are commonly accepted solutions to well-recognized design problems. In essence, they are a library of reusable components, only for software architecture, and not for a concrete implementation. This book helps you focus on the design patterns that naturally adapt to your needs, and on the patterns that uniquely benefit from the features of C++. Armed with the knowledge of these patterns, you’ll spend less time searching for solutions to common problems and tackle challenges with the solutions developed from experience. You’ll also explore that design patterns are a concise and efficient way to communicate, as patterns are a familiar and recognizable solution to a specific problem and can convey a considerable amount of information with a single line of code. By the end of this book, you’ll have a deep understanding of how to use design patterns to write maintainable, robust, and reusable software.
Read more
Jul 2023
Full star icon Full star icon Full star icon Full star icon Full star icon 5
626 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Fedor G. Pikus
Purchase Options
eBook $35.98 $39.99
Paperback $48.99
VIEW PRODUCT
More Product Details Close
Building Low Latency Applications with C++
Develop a complete low latency trading ecosystem from scratch using modern C++
Description
C++ is meticulously designed with efficiency, performance, and flexibility as its core objectives. However, real-time low latency applications demand a distinct set of requirements, particularly in terms of performance latencies. With this book, you’ll gain insights into the performance requirements for low latency applications and the C++ features critical to achieving the required performance latencies. You’ll also solidify your understanding of the C++ principles and techniques as you build a low latency system in C++ from scratch. You’ll understand the similarities between such applications, recognize the impact of performance latencies on business, and grasp the reasons behind the extensive efforts invested in minimizing latencies. Using a step-by-step approach, you’ll embark on a low latency app development journey by building an entire electronic trading system, encompassing a matching engine, market data handlers, order gateways, and trading algorithms, all in C++. Additionally, you’ll get to grips with measuring and optimizing the performance of your trading system. By the end of this book, you’ll have a comprehensive understanding of how to design and build low latency applications in C++ from the ground up, while effectively minimizing performance latencies.
Read more
Jul 2023
Full star icon Full star icon Full star icon Full star icon Full star icon 5
506 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Sourav Ghosh
Purchase Options
eBook $31.99 $35.99
Paperback $44.99
VIEW PRODUCT
More Product Details Close
C++ Programming for Linux Systems
Create robust enterprise software for Linux and Unix-based operating systems
Description
Around 35 million Linux and almost 2 billion Android users rely on C++ for everything from the simplest embedded and IoT devices to cloud services, supercomputing, and space exploration. To help you produce high-quality software, two industry experts have transformed their knowledge and experience into practical examples in system programming with C++ Programming for Linux Systems. In this book, you'll explore the latest C++20 features, while working on multiple specific use cases. You’ll get familiar with the coroutines and modern approaches in concurrent and multithreaded programming. You'll also learn to reshape your thinking when analyzing system behavior in Linux (POSIX) environments. Additionally, you'll discover advanced discussions and novel solutions for complex challenges, while approaching trivial system operations with a new outlook and learning to choose the best design for your particular case. You can use this workbook as an introduction to system programming and software design in Linux or any Unix-based environment. You’ll also find it useful as a guideline or a supplement to any C++ book. By the end of this book, you’ll have gained advanced knowledge and skills for working with Linux or any Unix-based environment.
Read more
Sep 2023 288 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Desislav Andreev
Purchase Options
eBook $32.99 $36.99
Paperback $45.99
VIEW PRODUCT
More Product Details Close
Qt 6 C++ GUI Programming Cookbook
Practical recipes for building cross-platform GUI applications, widgets, and animations with Qt 6
Description
With the growing need to develop GUIs for multiple targets and multiple screens, improving the visual quality of your application has become pivotal in helping it stand out from your competitors. With its cross-platform ability and the latest UI paradigms, Qt makes it possible to build intuitive, interactive, and user-friendly UIs for your applications. The third edition of Qt 6 C++ GUI Programming Cookbook teaches you how to develop functional and appealing UIs using the latest version of Qt 6 and C++. This book will help you learn a variety of topics such as GUI customization and animation, graphics rendering, and implementing Google Maps. You’ll also be taken through advanced concepts such as asynchronous programming, event handling using signals and slots, network programming, and other aspects to optimize your application. By the end of this Qt book, you’ll have the confidence you need to design and customize GUI applications that meet your clients' expectations and have an understanding of best-practice solutions to common problems during the app development process.
Read more
Apr 2024 428 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Eng
Purchase Options
eBook $32.99 $36.99
Paperback $45.99
VIEW PRODUCT
More Product Details Close
Template Metaprogramming with C++
Learn everything about C++ templates and unlock the power of template metaprogramming
Description
Learn how the metaprogramming technique enables you to create data structures and functions that allow computation to happen at compile time. With this book, you'll realize how templates help you avoid writing duplicate code and are key to creating generic libraries, such as the standard library or Boost, that can be used in a multitude of programs. The introductory chapters of this book will give you insights into the fundamentals of templates and metaprogramming. You'll then move on to practice writing complex templates and exploring advanced concepts such as template recursion, template argument deduction, forwarding references, type traits, and conditional compilation. Along the way, you'll learn how to write variadic templates and how to provide requirements to the template arguments with C++20 constraints and concepts. Finally, you'll apply your knowledge of C++ metaprogramming templates to implement various metaprogramming patterns and techniques. By the end of this book, you'll have learned how to write effective templates and implement metaprogramming in your everyday programming journey.
Read more
Aug 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
480 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Marius Bancila
Purchase Options
eBook $33.99 $37.99
Paperback $46.99
VIEW PRODUCT
More Product Details Close
Data Structures and Algorithms with the C++ STL
A guide for modern C++ practitioners
Description
While the Standard Template Library (STL) offers a rich set of tools for data structures and algorithms, navigating its intricacies can be daunting for intermediate C++ developers without expert guidance. This book offers a thorough exploration of the STL’s components, covering fundamental data structures, advanced algorithms, and concurrency features. Starting with an in-depth analysis of the std::vector, this book highlights its pivotal role in the STL, progressing toward building your proficiency in utilizing vectors, managing memory, and leveraging iterators. The book then advances to STL’s data structures, including sequence containers, associative containers, and unordered containers, simplifying the concepts of container adaptors and views to enhance your knowledge of modern STL programming. Shifting the focus to STL algorithms, you’ll get to grips with sorting, searching, and transformations and develop the skills to implement and modify algorithms with best practices. Advanced sections cover extending the STL with custom types and algorithms, as well as concurrency features, exception safety, and parallel algorithms. By the end of this book, you’ll have transformed into a proficient STL practitioner ready to tackle real-world challenges and build efficient and scalable C++ applications.
Read more
Feb 2024
Full star icon Full star icon Full star icon Full star icon Full star icon 5
458 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author John Farrier
Purchase Options
eBook $31.99 $35.99
Paperback $44.99
VIEW PRODUCT
More Product Details Close
C++20 STL Cookbook
Leverage the latest features of the STL to solve real-world problems
Description
Fast, efficient, and flexible, the C++ programming language has come a long way and is used in every area of the industry to solve many problems. The latest version C++20 will see programmers change the way they code as it brings a whole array of features enabling the quick deployment of applications. This book will get you up and running with using the STL in the best way possible. Beginning with new language features in C++20, this book will help you understand the language's mechanics and library features and offer insights into how they work. Unlike other books, the C++20 STL Cookbook takes an implementation-specific, problem-solution approach that will help you overcome hurdles quickly. You'll learn core STL concepts, such as containers, algorithms, utility classes, lambda expressions, iterators, and more, while working on real-world recipes. This book is a reference guide for using the C++ STL with its latest capabilities and exploring the cutting-edge features in functional programming and lambda expressions. By the end of the book C++20 book, you'll be able to leverage the latest C++ features and save time and effort while solving tasks elegantly using the STL.
Read more
May 2022 450 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Bill Weinman
Purchase Options
eBook $33.99 $37.99
Paperback $46.99
VIEW PRODUCT
More Product Details Close
Modern CMake for C++
Discover a better approach to building, testing, and packaging your software
Description
Creating top-notch software is an extremely difficult undertaking. Developers researching the subject have difficulty determining which advice is up to date and which approaches have already been replaced by easier, better practices. At the same time, most online resources offer limited explanation, while also lacking the proper context and structure. This book offers a simpler, more comprehensive, experience as it treats the subject of building C++ solutions holistically. Modern CMake for C++ is an end-to-end guide to the automatization of complex tasks, including building, testing, and packaging. You'll not only learn how to use the CMake language in CMake projects, but also discover what makes them maintainable, elegant, and clean. The book also focuses on the structure of source directories, building targets, and packages. As you progress, you’ll learn how to compile and link executables and libraries, how those processes work, and how to optimize builds in CMake for the best results. You'll understand how to use external dependencies in your project – third-party libraries, testing frameworks, program analysis tools, and documentation generators. Finally, you'll get to grips with exporting, installing, and packaging for internal and external purposes. By the end of this book, you’ll be able to use CMake confidently on a professional level.
Read more
Feb 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
460 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Rafał Świdziński
Purchase Options
eBook $33.99 $37.99
Paperback $46.99
VIEW PRODUCT
More Product Details Close
Deciphering Object-Oriented Programming with C++ [WARNING: NOT FOR USE IN OTHER MATERIAL/SEE CONTRACT]
A practical, in-depth guide to implementing object-oriented design principles to create robust code
Description
Even though object-oriented software design enables more easily maintainable code, companies choose C++ as an OO language for its speed. Object-oriented programming in C++ is not automatic – it is crucial to understand OO concepts and how they map to both C++ language features and OOP techniques. Distinguishing your code by utilizing well-tested, creative solutions, which can be found in popular design patterns, is crucial in today’s marketplace. This book will help you to harness OOP in C++ to write better code. Starting with the essential C++ features, which serve as building blocks for the key chapters, this book focuses on explaining fundamental object-oriented concepts and shows you how to implement them in C++. With the help of practical code examples and diagrams, you’ll learn how and why things work. The book’s coverage furthers your C++ repertoire by including templates, exceptions, operator overloading, STL, and OO component testing. You’ll discover popular design patterns with in-depth examples and understand how to use them as effective programming solutions to solve recurring OOP problems. By the end of this book, you’ll be able to employ essential and advanced OOP concepts to create enduring and robust software.
Read more
Sep 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
594 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Dorothy R. Kirk
Purchase Options
eBook $33.99 $37.99
Paperback $46.99
VIEW PRODUCT
More Product Details Close
Beginning C++ Programming
Modern C++ at your fingertips!
Description
C++ has come a long way and is now adopted in several contexts. Its key strengths are its software infrastructure and resource-constrained applications, including desktop applications, servers, and performance-critical applications, not to forget its importance in game programming. Despite its strengths in these areas, beginners usually tend to shy away from learning the language because of its steep learning curve. The main mission of this book is to make you familiar and comfortable with C++. You will finish the book not only being able to write your own code, but more importantly, you will be able to read other projects. It is only by being able to read others' code that you will progress from a beginner to an advanced programmer. This book is the first step in that progression. The first task is to familiarize you with the structure of C++ projects so you will know how to start reading a project. Next, you will be able to identify the main structures in the language, functions, and classes, and feel confident being able to identify the execution flow through the code. You will then become aware of the facilities of the standard library and be able to determine whether you need to write a routine yourself, or use an existing routine in the standard library. Throughout the book, there is a big emphasis on memory and pointers. You will understand memory usage, allocation, and access, and be able to write code that does not leak memory. Finally, you will learn about C++ classes and get an introduction to object orientation and polymorphism.
Read more
Apr 2017 526 pages
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Grimes
Purchase Options
eBook $38.99 $43.99
Paperback $54.99
VIEW PRODUCT
More Product Details Close
Debunking C++ Myths
Embark on an insightful journey to uncover the truths behind popular C++ myths and misconceptions
Description
Think you know C++? Think again. For decades, C++ has been clouded by myths and misunderstandings—from its early design decisions to misconceptions that still linger today. Claims like "C++ is too hard to learn" or "C++ is obsolete" are often rooted in some truth, but they are outdated and fail to capture the language’s ongoing evolution and modern capabilities. Written by industry veterans with over 40 years of combined experience, this book uncovers the myths, exploring their origins and relevance in the context of today’s C++ landscape. It equips you with a deeper understanding of advanced features and best practices to elevate your projects. Each chapter tackles a specific misconception, shedding light on C++'s modern features, such as smart pointers, lambdas, and concurrency. You’ll learn practical strategies to navigate common challenges like code portability and compiler compatibility, as well as how to incorporate modern best practices into your C++ codebase to optimize performance and future-proof your projects. By the end of this book, you’ll have a comprehensive understanding of C++'s evolution, equipping you to make informed decisions and harness its powerful features to enhance your skills, coding practices, and projects.
Read more
Dec 2024 226 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Alexandru Bolboacă
Purchase Options
eBook $27.99 $31.99
Paperback $39.99
VIEW PRODUCT
More Product Details Close
Cross-Platform Development with Qt 6 and Modern C++
Design and build applications with modern graphical user interfaces without worrying about platform dependency
Description
Qt is a cross-platform application development framework widely used for developing applications that can run on a wide range of hardware platforms with little to no change in the underlying codebase. If you have basic knowledge of C++ and want to build desktop or mobile applications with a modern graphical user interface (GUI), Qt is the right choice for you. Cross-Platform Development with Qt 6 and Modern C++ helps you understand why Qt is one of the favorite GUI frameworks adopted by industries worldwide, covering the essentials of programming GUI apps across a multitude of platforms using the standard C++17 and Qt 6 features. Starting with the fundamentals of the Qt framework, including the features offered by Qt Creator, this practical guide will show you how to create classic user interfaces using Qt Widgets and touch-friendly user interfaces using Qt Quick. As you advance, you'll explore the Qt Creator IDE for developing applications for multiple desktops as well as for embedded and mobile platforms. You will also learn advanced concepts about signals and slots. Finally, the book takes you through debugging and testing your app with Qt Creator IDE. By the end of this book, you'll be able to build cross-platform applications with a modern GUI along with the speed and power of native apps.
Read more
Jun 2021 442 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Nibedit Dey
Purchase Options
eBook $35.98 $39.99
Paperback $49.99
VIEW PRODUCT
More Product Details Close
Hands-On Design Patterns with C++
Solve common C++ problems with modern design patterns and build robust applications
Description
C++ is a general-purpose programming language designed with the goals of efficiency, performance, and flexibility in mind. Design patterns are commonly accepted solutions to well-recognized design problems. In essence, they are a library of reusable components, only for software architecture, and not for a concrete implementation. The focus of this book is on the design patterns that naturally lend themselves to the needs of a C++ programmer, and on the patterns that uniquely benefit from the features of C++, in particular, the generic programming. Armed with the knowledge of these patterns, you will spend less time searching for a solution to a common problem and be familiar with the solutions developed from experience, as well as their advantages and drawbacks. The other use of design patterns is as a concise and an efficient way to communicate. A pattern is a familiar and instantly recognizable solution to specific problem; through its use, sometimes with a single line of code, we can convey a considerable amount of information. The code conveys: "This is the problem we are facing, these are additional considerations that are most important in our case; hence, the following well-known solution was chosen." By the end of this book, you will have gained a comprehensive understanding of design patterns to create robust, reusable, and maintainable code.
Read more
Jan 2019 512 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Fedor G. Pikus
Purchase Options
eBook $34.99 $38.99
Paperback $54.99
VIEW PRODUCT
More Product Details Close
Hands-On System Programming with C++
Build performant and concurrent Unix and Linux systems with C++17
Description
C++ is a general-purpose programming language with a bias toward system programming as it provides ready access to hardware-level resources, efficient compilation, and a versatile approach to higher-level abstractions. This book will help you understand the benefits of system programming with C++17. You will gain a firm understanding of various C, C++, and POSIX standards, as well as their respective system types for both C++ and POSIX. After a brief refresher on C++, Resource Acquisition Is Initialization (RAII), and the new C++ Guideline Support Library (GSL), you will learn to program Linux and Unix systems along with process management. As you progress through the chapters, you will become acquainted with C++'s support for IO. You will then study various memory management methods, including a chapter on allocators and how they benefit system programming. You will also explore how to program file input and output and learn about POSIX sockets. This book will help you get to grips with safely setting up a UDP and TCP server/client. Finally, you will be guided through Unix time interfaces, multithreading, and error handling with C++ exceptions. By the end of this book, you will be comfortable with using C++ to program high-quality systems.
Read more
Dec 2018 552 pages
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Quinn
Purchase Options
eBook $38.99 $43.99
Paperback $54.99
VIEW PRODUCT
More Product Details Close
C++ Data Structures and Algorithms
Learn how to write efficient code to build scalable and robust applications in C++
Description
C++ is a general-purpose programming language which has evolved over the years and is used to develop software for many different sectors. This book will be your companion as it takes you through implementing classic data structures and algorithms to help you get up and running as a confident C++ programmer. We begin with an introduction to C++ data structures and algorithms while also covering essential language constructs. Next, we will see how to store data using linked lists, arrays, stacks, and queues. Then, we will learn how to implement different sorting algorithms, such as quick sort and heap sort. Along with these, we will dive into searching algorithms such as linear search, binary search and more. Our next mission will be to attain high performance by implementing algorithms to string datatypes and implementing hash structures in algorithm design. We'll also analyze Brute Force algorithms, Greedy algorithms, and more. By the end of the book, you'll know how to build components that are easy to understand, debug, and use in different applications.
Read more
Apr 2018
Full star icon Full star icon Full star icon Full star icon Full star icon 5
322 pages
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Wisnu Anggoro
Purchase Options
eBook $35.98 $39.99
Paperback $48.99
VIEW PRODUCT
More Product Details Close
C++ Memory Management
Write leaner and safer C++ code using proven memory-management techniques
Description
C++ programmers often face challenges in allocating and managing memory efficiently, especially given the diverse needs of real-time systems, embedded systems, games, and conventional desktop applications. This book offers a targeted approach to address the unique memory constraints of each domain. Written by an ISO C++ Standards Committee member, Patrice Roy, this guide covers fundamental concepts of object lifetime and memory organization to help you write simpler and safer programs. You’ll learn how to control memory allocation mechanisms, create custom containers and allocators, and adapt allocation operators to suit your specific requirements, making your programs smaller, faster, safer, and more predictable. Starting with core principles of memory management, this book introduces modern facilities that simplify your work and then dives into memory management mechanics, building solutions for specific application needs, and measuring their impact on your program’s behavior. By the end of this book, you’ll be able to write secure programs that handle memory optimally for your application domain. You will also have a strong grasp of both high-level abstractions for safer programs and low-level abstractions that allow detailed customization.
Read more
Mar 2025 434 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Patrice Roy
Purchase Options
eBook $29.99 $33.99
Paperback $41.99
VIEW PRODUCT
More Product Details Close
Mastering the C++17 STL
Make full use of the standard library components in C++17
Description
Modern C++ has come a long way since 2011. The latest update, C++17, has just been ratified and several implementations are on the way. This book is your guide to the C++ standard library, including the very latest C++17 features. The book starts by exploring the C++ Standard Template Library in depth. You will learn the key differences between classical polymorphism and generic programming, the foundation of the STL. You will also learn how to use the various algorithms and containers in the STL to suit your programming needs. The next module delves into the tools of modern C++. Here you will learn about algebraic types such as std::optional, vocabulary types such as std::function, smart pointers, and synchronization primitives such as std::atomic and std::mutex. In the final module, you will learn about C++'s support for regular expressions and file I/O. By the end of the book you will be proficient in using the C++17 standard library to implement real programs, and you'll have gained a solid understanding of the library's own internals.
Read more
Sep 2017 384 pages
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Arthur O'Dwyer
Purchase Options
eBook $35.98 $39.99
Paperback $48.99
VIEW PRODUCT
More Product Details Close
Expert C++
Become a proficient programmer by learning coding best practices with C++17 and C++20's latest features
Description
Are you an experienced C++ developer eager to take your skills to the next level? This updated edition of Expert C++ is tailored to propel you toward your goals. This book takes you on a journey of building C++ applications while exploring advanced techniques beyond object-oriented programming. Along the way, you'll get to grips with designing templates, including template metaprogramming, and delve into memory management and smart pointers. Once you have a solid grasp of these foundational concepts, you'll advance to more advanced topics such as data structures with STL containers and explore advanced data structures with C++. Additionally, the book covers essential aspects like functional programming, concurrency, and multithreading, and designing concurrent data structures. It also offers insights into designing world-ready applications, incorporating design patterns, and addressing networking and security concerns. Finally, it adds to your knowledge of debugging and testing and large-scale application design. With Expert C++ as your guide, you'll be empowered to push the boundaries of your C++ expertise and unlock new possibilities in software development.
Read more
Aug 2023
Full star icon Full star icon Full star icon Full star icon Full star icon 5
604 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Marcelo Guerra Hahn
Purchase Options
eBook $35.98 $39.99
Paperback $49.99
VIEW PRODUCT
More Product Details Close
Modern C++ Programming Cookbook
Master C++ core language and standard library features, with over 100 recipes, updated to C++20
Description
C++ has come a long way to be one of the most widely used general-purpose languages that is fast, efficient, and high-performance at its core. The updated second edition of Modern C++ Programming Cookbook addresses the latest features of C++20, such as modules, concepts, coroutines, and the many additions to the standard library, including ranges and text formatting. The book is organized in the form of practical recipes covering a wide range of problems faced by modern developers. The book also delves into the details of all the core concepts in modern C++ programming, such as functions and classes, iterators and algorithms, streams and the file system, threading and concurrency, smart pointers and move semantics, and many others. It goes into the performance aspects of programming in depth, teaching developers how to write fast and lean code with the help of best practices. Furthermore, the book explores useful patterns and delves into the implementation of many idioms, including pimpl, named parameter, and attorney-client, teaching techniques such as avoiding repetition with the factory pattern. There is also a chapter dedicated to unit testing, where you are introduced to three of the most widely used libraries for C++: Boost.Test, Google Test, and Catch2. By the end of the book, you will be able to effectively leverage the features and techniques of C++11/14/17/20 programming to enhance the performance, scalability, and efficiency of your applications.
Read more
Sep 2020
Full star icon Full star icon Full star icon Full star icon Full star icon 5
750 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Marius Bancila
Purchase Options
eBook $67.99 $75.99
Paperback $94.99
VIEW PRODUCT
More Product Details Close
Software Architecture with C++
Design modern systems using effective architecture concepts, design patterns, and techniques with C++20
Description
Software architecture refers to the high-level design of complex applications. It is evolving just like the languages we use, but there are architectural concepts and patterns that you can learn to write high-performance apps in a high-level language without sacrificing readability and maintainability. If you're working with modern C++, this practical guide will help you put your knowledge to work and design distributed, large-scale apps. You'll start by getting up to speed with architectural concepts, including established patterns and rising trends, then move on to understanding what software architecture actually is and start exploring its components. Next, you'll discover the design concepts involved in application architecture and the patterns in software development, before going on to learn how to build, package, integrate, and deploy your components. In the concluding chapters, you'll explore different architectural qualities, such as maintainability, reusability, testability, performance, scalability, and security. Finally, you will get an overview of distributed systems, such as service-oriented architecture, microservices, and cloud-native, and understand how to apply them in application development. By the end of this book, you'll be able to build distributed services using modern C++ and associated tools to deliver solutions as per your clients' requirements.
Read more
Apr 2021 540 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Adrian Ostrowski
Purchase Options
eBook $38.99 $43.99
Paperback $54.99
Audiobook $32.99
VIEW PRODUCT
More Product Details Close
Refactoring with C++
Explore modern ways of developing maintainable and efficient applications
Description
Despite the prevalence of higher-level languages, C++ is still running the world, from bare-metal embedded systems to distributed cloud-native systems. C++ is on the frontline whenever there is a need for a performance-sensitive tool supporting complex data structures. The language has been actively evolving for the last two decades. This book is a comprehensive guide that shows you how to implement SOLID principles and refactor legacy code using the modern features and approaches of C++, the standard library, Boost library collection, and Guidelines Support Library by Microsoft. The book begins by describing the essential elements of writing clean code and discussing object-oriented programming in C++. You’ll explore the design principles of software testing with examples of using popular unit testing frameworks such as Google Test. The book also guides you through applying automated tools for static and dynamic code analysis using Clang Tools. By the end of this book, you’ll be proficient in applying industry-approved coding practices to design clean, sustainable, and readable real-world C++ code.
Read more
Jul 2024 368 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Dmitry Danilov
Purchase Options
eBook $27.99 $31.99
Paperback $39.99
VIEW PRODUCT
More Product Details Close
Integrate Lua with C++
Seamlessly integrate Lua scripting to enhance application flexibility
Description
C++ is a popular choice in the developer community for building complex and large-scale performant applications and systems. Often a need arises to extend the system at runtime, without recompiling the whole C++ program. Using a scripting language like Lua can help achieve this goal efficiently. Integrate Lua to C++ is a comprehensive guide to integrating Lua to C++ and will enable you to achieve the goal of extending C++ programs at runtime. You’ll learn, in sequence, how to get and compile the Lua library, the Lua programming language, calling Lua code from C++, and calling C++ code from Lua. In each topic, you’ll practice with code examples, and learn the in-depth mechanisms for smooth working. Throughout the book, the latter examples build on the earlier ones while also acting as a standalone. You’ll learn to implement Lua executor and Lua binding generator, which you can use in your projects directly with further customizations. By the end of this book, you’ll have mastered integrating Lua into C++ and using Lua in your C++ project efficiently, gained the skills to extend your applications at runtime, and achieved dynamic and adaptable C++ development.
Read more
Oct 2023 216 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Wenhuan Li
Purchase Options
eBook $35.98 $39.99
Paperback $49.99
VIEW PRODUCT
More Product Details Close
Microsoft Visual C++ Windows Applications by Example
Code and explanation for real-world MFC C++ Applications
Description
Read more
Jun 2008 440 pages
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Stefan Bjornander
Author Stefan Björnander
Purchase Options
eBook $25.99 $28.99
Paperback $48.99
VIEW PRODUCT
More Product Details Close
Mastering C++ Multithreading
Write robust, concurrent, and parallel applications
Description
Multithreaded applications execute multiple threads in a single processor environment, allowing developers achieve concurrency. This book will teach you the finer points of multithreading and concurrency concepts and how to apply them efficiently in C++. Divided into three modules, we start with a brief introduction to the fundamentals of multithreading and concurrency concepts. We then take an in-depth look at how these concepts work at the hardware-level as well as how both operating systems and frameworks use these low-level functions. In the next module, you will learn about the native multithreading and concurrency support available in C++ since the 2011 revision, synchronization and communication between threads, debugging concurrent C++ applications, and the best programming practices in C++. In the final module, you will learn about atomic operations before moving on to apply concurrency to distributed and GPGPU-based processing. The comprehensive coverage of essential multithreading concepts means you will be able to efficiently apply multithreading concepts while coding in C++.
Read more
Jul 2017 244 pages
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Maya Posch
Purchase Options
eBook $35.98 $39.99
Paperback $48.99
VIEW PRODUCT
More Product Details Close
Advanced C++ Programming Cookbook
Become an expert C++ programmer by mastering concepts like templates, concurrency, and type deduction
Description
If you think you've mastered C++ and know everything it takes to write robust applications, you'll be in for a surprise. With this book, you'll gain comprehensive insights into C++, covering exclusive tips and interesting techniques to enhance your app development process. You'll kick off with the basic principles of library design and development, which will help you understand how to write reusable and maintainable code. You'll then discover the importance of exception safety, and how you can avoid unexpected errors or bugs in your code. The book will take you through the modern elements of C++, such as move semantics, type deductions, and coroutines. As you advance, you'll delve into template programming - the standard tool for most library developers looking to achieve high code reusability. You'll explore the STL and learn how to avoid common pitfalls while implementing templates. Later, you'll learn about the problems of multithreaded programming such as data races, deadlocks, and thread starvation. You'll also learn high-performance programming by using benchmarking tools and libraries. Finally, you'll discover advanced techniques for debugging and testing to ensure code reliability. By the end of this book, you'll have become an expert at C++ programming and will have gained the skills to solve complex development problems with ease.
Read more
Jan 2020 454 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Quinn
Purchase Options
eBook $26.98 $29.99
Paperback $43.99
VIEW PRODUCT
More Product Details Close
Boost.Asio C++ Network Programming
Learn effective C++ network programming with Boost.Asio and become a proficient C++ network programmer
Description
Boost.Asio is a C++ library used for network programming operations. Organizations use Boost because of its productivity. Use of these high-quality libraries speed up initial development, result in fewer bugs, reduce reinvention-of-the-wheel, and cut long-term maintenance costs. Using Boost libraries gives an organization a head start in adopting new technologies. This book will teach you C++ Network programming using synchronous and asynchronous operations in Boost.Asio with minimum code, along with the fundamentals of Boost, server-client applications, debugging, and more. You will begin by preparing and setting up the required tools to simplify your network programming in C++ with Boost.Asio. Then you will learn about the basic concepts in networking such as IP addressing, TCP/IP protocols, and LAN with its topologies. This will be followed by an overview of the Boost libraries and their usage. Next you will get to know more about Boost.Asio and its concepts related to network programming. We will then go on to create a client-server application, helping you to understand the networking concepts. Moving on, you will discover how to use all the functions inside the Boost.Asio C++ libraries. Lastly, you will understand how to debug the code if there are errors found and will run the code successfully.
Read more
Sep 2015 200 pages
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Wisnu Anggoro
Purchase Options
eBook $22.99 $25.99
Paperback $32.99
VIEW PRODUCT
More Product Details Close
Hands-On Functional Programming with C++
An effective guide to writing accelerated functional code using C++17 and C++20
Description
Functional programming enables you to divide your software into smaller, reusable components that are easy to write, debug, and maintain. Combined with the power of C++, you can develop scalable and functional applications for modern software requirements. This book will help you discover the functional features in C++ 17 and C++ 20 to build enterprise-level applications. Starting with the fundamental building blocks of functional programming and how to use them in C++, you’ll explore functions, currying, and lambdas. As you advance, you’ll learn how to improve cohesion and delve into test-driven development, which will enable you in designing better software. In addition to this, the book covers architectural patterns such as event sourcing to help you get to grips with the importance of immutability for data storage. You’ll even understand how to “think in functions” and implement design patterns in a functional way. By the end of this book, you’ll be able to write faster and cleaner production code in C++ with the help of functional programming.
Read more
Jun 2019 358 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Alexandru Bolboaca
Purchase Options
eBook $23.99 $26.99
Paperback $38.99
VIEW PRODUCT
More Product Details Close
Qt5 C++ GUI Programming Cookbook
Practical recipes for building cross-platform GUI applications, widgets, and animations with Qt 5
Description
With the growing need to develop GUIs for multiple targets and multiple screens, improving the visual quality of your application becomes important so that it stands out from your competitors. With its cross-platform ability and the latest UI paradigms, Qt makes it possible to build intuitive, interactive, and user-friendly user interfaces for your applications. Qt5 C++ GUI Programming Cookbook, Second Edition teaches you how to develop functional and appealing user interfaces using the latest version of QT5 and C++. This book will help you learn a variety of topics such as GUI customization and animation, graphics rendering, implementing Google Maps, and more. You will also be taken through advanced concepts like asynchronous programming, event handling using signals and slots, network programming, various aspects of optimizing your application. By the end of the book, you will be confident to design and customize GUI applications that meet your clients' expectations and have an understanding of best practice solutions for common problems.
Read more
Mar 2019 428 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Eng
Purchase Options
eBook $26.98 $29.99
Paperback $43.99
VIEW PRODUCT
More Product Details Close
C++17 STL Cookbook
Discover the latest enhancements to functional programming and lambda expressions
Description
C++ has come a long way and is in use in every area of the industry. Fast, efficient, and flexible, it is used to solve many problems. The upcoming version of C++ will see programmers change the way they code. If you want to grasp the practical usefulness of the C++17 STL in order to write smarter, fully portable code, then this book is for you. Beginning with new language features, this book will help you understand the language’s mechanics and library features, and offers insight into how they work. Unlike other books, ours takes an implementation-specific, problem-solution approach that will help you quickly overcome hurdles. You will learn the core STL concepts, such as containers, algorithms, utility classes, lambda expressions, iterators, and more, while working on practical real-world recipes. These recipes will help you get the most from the STL and show you how to program in a better way. By the end of the book, you will be up to date with the latest C++17 features and save time and effort while solving tasks elegantly using the STL.
Read more
Jun 2017 532 pages
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Galowicz
Purchase Options
eBook $38.99 $43.99
Paperback $54.99
VIEW PRODUCT
More Product Details Close
C++ High Performance
Boost and optimize the performance of your C++17 code
Description
C++ is a highly portable language and can be used to write both large-scale applications and performance-critical code. It has evolved over the last few years to become a modern and expressive language. This book will guide you through optimizing the performance of your C++ apps by allowing them to run faster and consume fewer resources on the device they're running on without compromising the readability of your code base. The book begins by helping you measure and identify bottlenecks in a C++ code base. It then moves on by teaching you how to use modern C++ constructs and techniques. You'll see how this affects the way you write code. Next, you'll see the importance of data structure optimization and memory management, and how it can be used efficiently with respect to CPU caches. After that, you'll see how STL algorithm and composable Range V3 should be used to both achieve faster execution and more readable code, followed by how to use STL containers and how to write your own specialized iterators. Moving on, you’ll get hands-on experience in making use of modern C++ metaprogramming and reflection to reduce boilerplate code as well as in working with proxy objects to perform optimizations under the hood. After that, you’ll learn concurrent programming and understand lock-free data structures. The book ends with an overview of parallel algorithms using STL execution policies, Boost Compute, and OpenCL to utilize both the CPU and the GPU.
Read more
Jan 2018
Full star icon Full star icon Full star icon Full star icon Full star icon 5
374 pages
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Björn Andrist
Purchase Options
eBook $35.98 $39.99
Paperback $48.99
VIEW PRODUCT
More Product Details Close
Hands-On GUI Programming with C++ and Qt5
Build stunning cross-platform applications and widgets with the most powerful GUI framework
Description
Qt 5, the latest version of Qt, enables you to develop applications with complex user interfaces for multiple targets. It provides you with faster and smarter ways to create modern UIs and applications for multiple platforms. This book will teach you to design and build graphical user interfaces that are functional, appealing, and user-friendly. In the initial part of the book, you will learn what Qt 5 is and what you can do with it. You will explore the Qt Designer, discover the different types of widgets generally used in Qt 5, and then connect your application to the database to perform dynamic operations. Next, you will be introduced to Qt 5 chart which allows you to easily render different types of graphs and charts and incorporate List View Widgets in your application. You will also work with various Qt modules, like QtLocation, QtWebEngine, and the networking module through the course of the book. Finally, we will focus on cross-platform development with QT 5 that enables you to code once and run it everywhere, including mobile platforms. By the end of this book, you will have successfully learned about high-end GUI applications and will be capable of building many more powerful, cross-platform applications.
Read more
Apr 2018 404 pages
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Eng
Author Lee Z Eng
Purchase Options
eBook $35.98 $39.99
Paperback $48.99
VIEW PRODUCT
More Product Details Close
C++ System Programming Cookbook
Practical recipes for Linux system-level programming using the latest C++ features
Description
C++ is the preferred language for system programming due to its efficient low-level computation, data abstraction, and object-oriented features. System programming is about designing and writing computer programs that interact closely with the underlying operating system and allow computer hardware to interface with the programmer and the user. The C++ System Programming Cookbook will serve as a reference for developers who want to have ready-to-use solutions for the essential aspects of system programming using the latest C++ standards wherever possible. This C++ book starts out by giving you an overview of system programming and refreshing your C++ knowledge. Moving ahead, you will learn how to deal with threads and processes, before going on to discover recipes for how to manage memory. The concluding chapters will then help you understand how processes communicate and how to interact with the console (console I/O). Finally, you will learn how to deal with time interfaces, signals, and CPU scheduling. By the end of the book, you will become adept at developing robust systems applications using C++.
Read more
Feb 2020 292 pages
AI Assistant AI Assistant
AI Assistant: Features our revolutionary AI Assistant technology which lets you interact with our Books to enhance your learning
Authors
Author Vaticone
Purchase Options
eBook $23.99 $26.99
Paperback $38.99
VIEW PRODUCT
36  items/page