در این کتاب، تمامی چیز هایی که در مورد ++C احتیاج دارید بدانید را در یک روند منطقی از درسهای کوچک و با هر سرعتی که نیاز دارید بررسی میکنید. این کتاب، سی پلاس پلاس را به تکههای کوچکی تقسیم کرده است تا به شما در یادگیری این زبان به صورت گام به گام کمک کند. این کتاب به طور کامل به روز رسانی شده تا C++20 را پوشش دهد؛ همچنین فرض شده است که خواننده هیچگونه آشنایی با سی پلاس پلاس و یا هر زبان دیگر مبتنی بر سی را ندارد.
کتاب Exploring C++20، اعتراف میکند که سی پلاس پلاس میتواند زبان پیچیده ای باشد، بنابراین بجای اینکه شما را با فصلهای پیچیده ای گیج کند که توابع، کلاسها و عبارات را به صورت جداگانه توضیح داده اند، شما بر روی چگونگی دستیابی به نتایج تمرکز خواهید کرد. با یادگیری یک مقدار از این و یک مقدار از آن، شما زود دانش کافی برای نوشتن برنامههای غیر بدیهی را بدست خواهید آورد و پایه و اساس محکمی از تجربه ایجاد کرده که آن مفاهیم را که قبلاً ناراحت کننده بودند، در زمینه قرار میدهد.
در ویرایش سوم کتاب ++Exploring C که به طور کامل مورد بازنگری قرار گرفته شده است، شما نحوه استفاده از کتابخانه استاندارد را از همان ابتدای کتاب یاد میگیرید. در ادامه شما با عملگر ها، اشیا و منابع داده در شرایط واقع گرایانه بیشتری کار خواهد کرد. در انتها، شما شروع به کنار هم قرار دادن تکهها میکنید تا برنامههای پیچیده ای از طراحی خود ایجاد کنید.
کتاب جستجو در سی پلاس پلاس 20، برای تمامی برنامه نویسانی که تجربهی کمی با ++C دارند و یا اصلا تجربه ای ندارد و همچنین کسانی که به دنبال یک راهنمای سریع برای C++20 هستند، مناسب است.
مطالبی که در کتاب «جستجو در سی پلاس پلاس 20» یاد خواهید گرفت:
- فهمیدن اصول از جمله عبارات مرکب، ماژولها و موارد دیگر
- کار با انواع سفارشی و نحوه استفاده از آن ها
- نوشتن الگوریتمهای مفید، توابع و موارد دیگر
- بررسی جدیدترین قابلیتهای C++ 20 از جمله مفاهیم، ماژولها و range ها
- بکارگیری مهارتهای خود در پروژه هایی که شامل اعداد ممیز ثابت هستند و برنامههای body-mass index
- انجام برنامه نویسی generic و بکارگیری آن در یک پروژه عملی
- بهره گیری از وراثت چندگانه، traits/policies، توابع overloaded و برنامه نویسی meta
Table of Contents:
- Part I: The Basics
- Exploration 1: Honing Your Tools
- Exploration 2: Reading C++ Code
- Exploration 3: Integer Expressions
- Exploration 4: Strings
- Exploration 5: Simple Input
- Exploration 6: Error Messages
- Exploration 7: More Loops
- Exploration 8: Formatted Output
- Exploration 9: Arrays and Vectors
- Exploration 10: Algorithms and Ranges
- Exploration 11: Increment and Decrement
- Exploration 12: Conditions and Logic
- Exploration 13: Compound Statements
- Exploration 14: Introduction to File I/O
- Exploration 15: The Map Data Structure
- Exploration 16: Type Synonyms
- Exploration 17: Characters
- Exploration 18: Character Categories
- Exploration 19: Case-Folding
- Exploration 20: Writing Functions
- Exploration 21: Function Arguments
- Exploration 22: Using Ranges
- Exploration 23: Using Iterators
- Exploration 24: Unnamed Functions
- Exploration 25: Overloading Function Names
- Exploration 26: Big and Little Numbers
- Exploration 27: Very Big and Very Little Numbers
- Exploration 28: Documentation
- Exploration 29: Project 1: Body Mass Index
- Part II: Custom Types
- Exploration 30: Custom Types
- Exploration 31: Overloading Operators
- Exploration 32: Custom I/O Operators
- Exploration 33: Assignment and Initialization
- Exploration 34: Writing Classes
- Exploration 35: More About Member Functions
- Exploration 36: Access Levels
- Exploration 37: Understanding Object-Oriented Programming
- Exploration 38: Inheritance
- Exploration 39: Virtual Functions
- Exploration 40: Classes and Types
- Exploration 41: Declarations and Definitions
- Exploration 42: Modules
- Exploration 43: Old-Fashioned “Modules”
- Exploration 44: Function Objects
- Exploration 45: Useful Algorithms
- Exploration 46: More About Iterators
- Exploration 47: Ranges, Views, and Adaptors
- Exploration 48: Exceptions
- Exploration 49: More Operators
- Exploration 50: Project 2: Fixed-Point Numbers
- Part III: Generic Programming
- Exploration 51: Function Templates
- Exploration 52: Class Templates
- Exploration 53: Template Specialization
- Exploration 54: Partial Template Specialization
- Exploration 55: Template Constraints
- Exploration 56: Names and Namespaces
- Exploration 57: Containers
- Exploration 58: Locales and Facets
- Exploration 59: International Characters
- Exploration 60: Text I/O
- Exploration 61: Project 3: Currency Type
- Part IV: Real Programming
- Exploration 62: Pointers
- Exploration 63: Regular Expressions
- Exploration 64: Moving Data with Rvalue References
- Exploration 65: Smart Pointers
- Exploration 66: Files and File Names
- Exploration 67: Working with Bits
- Exploration 68: Enumerations
- Exploration 69: Multiple Inheritance
- Exploration 70: Concepts, Traits, and Policies
- Exploration 71: Names, Namespaces, and Templates
- Exploration 72: Overloaded Functions and Operators
- Exploration 73: Programming at Compile Time
- Exploration 74: Project 4: Calculator