C++17 STL Cookbook

Jacek Galowicz

  • 出版商: Packt Publishing
  • 出版日期: 2017-06-28
  • 定價: $1,700
  • 售價: 8.0$1,360
  • 語言: 英文
  • 頁數: 532
  • 裝訂: Paperback
  • ISBN: 178712049X
  • ISBN-13: 9781787120495
  • 相關分類: C++ 程式語言
  • 立即出貨 (庫存=1)

買這商品的人也買了...

商品描述

Key Features

  • Learn the latest features of C++ and how to write better code by using the Standard Library (STL). Reduce the development time for your applications.
  • Understand the scope and power of STL features to deal with real-world problems.
  • Compose your own algorithms without forfeiting the simplicity and elegance of the STL way.

Book 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.

What you will learn

  • Learn about the new core language features and the problems they were intended to solve
  • Understand the inner workings and requirements of iterators by implementing them
  • Explore algorithms, functional programming style, and lambda expressions
  • Leverage the rich, portable, fast, and well-tested set of well-designed algorithms provided in the STL
  • Work with strings the STL way instead of handcrafting C-style code
  • Understand standard support classes for concurrency and synchronization, and how to put them to work
  • Use the filesystem library addition available with the C++17 STL

About the Author

Jacek Galowicz obtained his master of science in electrical engineering/computer engineering at RWTH Aachen University, Germany. While at university, he enjoyed working as a student assistant in teaching and research, and he participated in several scientific publications. During and after his studies, he worked as a freelancer and implemented applications as well as kernel drivers in C and C++, touching various areas, including 3D graphics programming, databases, network communication, and physics simulation. In recent years, he has been programming performance- and security-sensitive microkernel operating systems for Intel x86 virtualization at Intel and FireEye in Braunschweig, Germany. He has a strong passion for modern C++ implementations of low-level software, and he tries hard to combine high performance with an elegant coding style. Learning purely functional programming and Haskell in recent years triggered his drive to implement generic code with the aid of meta programming.

Table of Contents

  1. The New C++17 Features
  2. STL Containers
  3. Iterators
  4. Lambda Expressions
  5. STL Algorithm Basics
  6. Advanced Use of STL Algorithms
  7. Strings, Stream Classes, and Regular Expressions
  8. Utility Classses
  9. Parallelism and Concurrency
  10. Filesystem

商品描述(中文翻譯)

主要特點



  • 學習C++的最新功能,並通過使用標準庫(STL)編寫更好的代碼。減少應用程序的開發時間。

  • 了解STL功能的範圍和威力,以應對現實世界的問題。

  • 在不放棄STL方式的簡潔和優雅的前提下,編寫自己的算法。

書籍描述


C++已經發展了很長一段時間,並且在各個行業中都有應用。它快速、高效、靈活,用於解決許多問題。即將推出的C++版本將改變程序員的編碼方式。如果您想掌握C++17 STL的實際用途,以便編寫更智能、完全可移植的代碼,那麼這本書就是為您而寫的。


從新的語言功能開始,本書將幫助您了解語言的機制和庫功能,並提供有關它們如何工作的見解。與其他書籍不同,我們採用了一種特定於實現的問題解決方法,這將幫助您迅速克服障礙。在實際的現實世界示例中,您將學習核心STL概念,如容器、算法、實用類、lambda表達式、迭代器等。這些示例將幫助您充分利用STL,並向您展示如何以更好的方式編程。


通過閱讀本書,您將了解最新的C++17功能,並節省時間和精力,同時使用STL優雅地解決任務。

您將學到什麼



  • 了解新的核心語言功能及其解決的問題

  • 通過實現迭代器來了解其內部運作和要求

  • 探索算法、函數式編程風格和lambda表達式

  • 利用STL提供的豐富、可移植、快速且經過良好測試的一組設計良好的算法

  • 以STL方式處理字符串,而不是手工編寫C風格的代碼

  • 了解並使用C++17 STL中提供的標準支持類進行並發和同步

  • 使用C++17 STL中提供的文件系統庫擴展

關於作者


Jacek Galowicz在德國亞琛工業大學(RWTH Aachen University)獲得電機工程/計算機工程碩士學位。在大學期間,他喜歡在教學和研究中擔任學生助理,並參與了幾篇科學論文的撰寫。在學習期間和之後,他作為自由職業者工作,使用C和C++實現應用程序和內核驅動程序,涉及3D圖形編程、數據庫、網絡通信和物理模擬等各個領域。近年來,他在德國不倫瑞克的Intel和FireEye公司開發性能和安全敏感的Intel x86虛擬化微內核操作系統。他對現代C++低級軟件的實現充滿熱情,並努力將高性能與優雅的編碼風格相結合。近年來,他通過學習純函數式編程和Haskell,激發了他通過元編程的幫助來實現通用代碼的動力。

目錄



  1. 新的C++17功能

  2. STL容器

  3. 迭代器

  4. lambda表達式

  5. STL算法基礎

  6. STL算法的高級用法

  7. 字符串、流類和正則表達式

  8. 實用類

  9. 並行和並發

  10. 文件系統