Beginning C++20: From Novice to Professional, 6/e (Paperback)

Horton, Ivor, Van Weert, Peter

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

商品描述

Begin your programming journey with C++ including the C++20 standard. You'll start with the basics and progress through step-by-step examples to become a working C++ programmer. This book will include new features like parallelism, coroutines, modules, networking, ranges, and reflections. All you need are Beginning C++20 and any recent C++ compiler and you'll soon be writing real C++ programs. There is no assumption of prior programming knowledge.
All language concepts that are explained in the book are illustrated with working program examples, and all chapters include exercises for you to test and practice your knowledge. Free source code downloads are provided for all examples from the text and solutions to the exercises.
This latest edition has been fully updated to the latest version of the language, C++20, and to all conventions and best practices of modern C++. Beginning C++20 also introduces the elements of the C++ Standard Library that provide essential support for the C++20 language.
What You Will Learn

  • Begin programming with C++20 standard
  • Carry out modular programming in C++
  • Work with arrays and loops, pointers and references, strings, and more
  • Write your own functions, types, and operators
  • Discover the essentials of object-oriented programming
  • Use overloading, inheritance, virtual functions, and polymorphism
  • Write generic function templates and class templates
  • Use coroutines, parallelism, ranges, auto type declarations, move semantics, lambda expressions, and much more


Who This Book Is For
Programmers new to C++ and those who may be looking for a refresh primer on C++ in general.

商品描述(中文翻譯)

開始你的C++程式設計之旅,包括C++20標準。你將從基礎知識開始,透過逐步示例的進展成為一名實踐的C++程式設計師。本書將介紹新功能,如平行處理、協程、模組、網路連線、範圍和反射。你只需要《Beginning C++20》和任何最新的C++編譯器,很快就能寫出真正的C++程式。本書不假設讀者具備先前的程式設計知識。

書中解釋的所有語言概念都以實際的程式範例加以說明,每章都包含練習題,供你測試和練習你的知識。所有範例的免費原始碼下載和練習題解答都提供。

這本最新版已完全更新至最新版本的語言C++20,並遵循現代C++的所有慣例和最佳實踐。《Beginning C++20》還介紹了C++標準庫的元素,為C++20語言提供了必要的支援。

你將學到什麼

- 開始使用C++20標準進行程式設計
- 在C++中進行模組化程式設計
- 使用陣列和迴圈、指標和參考、字串等
- 編寫自己的函數、類型和運算子
- 探索物件導向程式設計的基礎知識
- 使用重載、繼承、虛函數和多型
- 編寫通用函數模板和類別模板
- 使用協程、平行處理、範圍、自動型別宣告、移動語義、Lambda表達式等等

本書適合對C++新手以及對C++有興趣的人

作者簡介

Ivor Horton is self-employed in consultancy and writes programming tutorials. He is the author of many programming books. Ivor worked for IBM for many years and holds a bachelor's degree, with honors, in mathematics. Horton's experience at IBM includes programming in most languages (including assembler and high-level languages on a variety of machines), real-time programming, and designing and implementing real-time closed loop industrial control systems. He has extensive experience teaching programming to engineers and scientists (Fortran, PL/1, APL, etc.). Horton is an expert in mechanical, process, and electronic CAD systems; mechanical CAM systems; and DNC/CNC systems.

 

Peter Van Weert works for Danaher in its R&D unit for digital dentistry software, developing software for the dental practice of tomorrow. In his spare time, he has co-authored two books on C++ and two award-winning Windows 8 apps and is a regular expert speaker at, and board member of, the Belgian C++ Users Group. He is a software engineer whose main interests and expertise are application software development, programming languages, algorithms, and data structures.He received his master of science degree in computer science summa cum laude with congratulations of the Board of Examiners from the University of Leuven. In 2010, he completed his PhD thesis there on the design and efficient compilation of rule-based programming languages at the research group for declarative programming languages and artificial intelligence. During his doctoral studies, he was a teaching assistant for object-oriented programming (Java), software analysis and design, and declarative programming. After graduating, Peter worked at Nikon Metrology for more than six years on large-scale, industrial application software in the area of 3D laser scanning and point cloud inspection. He learned to master C++ and refactoring and debugging of very large code bases, and he gained further proficiency in all aspects of the software development process, including the analysis of functional and technical requirements, and agile and scrum-based project and team management.

 

作者簡介(中文翻譯)

Ivor Horton是一位自由諮詢顧問,並撰寫程式教學。他是許多程式書籍的作者。Ivor在IBM工作多年,擁有數學學士學位,並以優異成績畢業。他在IBM的經驗包括使用多種語言進行程式設計(包括組合語言和高階語言),實時程式設計,以及設計和實施實時閉環工業控制系統。他在教授程式設計給工程師和科學家(Fortran,PL/1,APL等)方面擁有豐富經驗。Horton是機械、過程和電子CAD系統、機械CAM系統和DNC/CNC系統的專家。

Peter Van Weert在Danaher的數位牙科軟體研發部門工作,開發未來牙科實踐的軟體。在業餘時間,他共同撰寫了兩本關於C++的書籍和兩個獲獎的Windows 8應用程式,並且是比利時C++使用者群體的定期專家演講者和董事會成員。他是一位軟體工程師,主要興趣和專長是應用軟體開發、程式語言、演算法和資料結構。他以優異成績從魯汶大學獲得計算機科學碩士學位,並獲得考試委員會的祝賀。2010年,他在魯汶大學的宣告性程式語言和人工智慧研究小組完成了他的博士論文,該論文探討基於規則的程式語言的設計和高效編譯。在攻讀博士學位期間,他擔任面向對象編程(Java)、軟體分析和設計以及宣告性程式設計的教學助教。畢業後,Peter在Nikon Metrology工作了六年多,從事3D激光掃描和點雲檢測領域的大型工業應用軟體開發。他學會了精通C++,並能夠重構和調試非常大的程式碼庫,並在軟體開發過程的各個方面獲得了更深入的熟練,包括功能和技術需求分析,以及基於敏捷和Scrum的專案和團隊管理。