آموزش C ++ Standard Library: ظروف متوالی

C++ Standard Library: Sequential Containers

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیویی برای نمایش وجود ندارد.
توضیحات دوره: این دوره با استفاده از اسلایدها و کد های آزمایشی ، نحوه استفاده از برخی ظروف مهم موجود در کتابخانه استاندارد C ++ (به عنوان مثال std :: vector) را به شما بصورت عملی آموزش می دهد. با مزایا و معایب آنها ، عملکردهای معمول و نحوه رفع اشکالات ظریف آشنا خواهید شد. برنامه های رایانه ای غیر پیش پا افتاده نیاز به ذخیره داده ها و پردازش آنها دارند. توسعه ساختارهای داده و ظروف از ابتدا در C ++ یک کار دلهره آور و مستعد اشکال است. در واقع ، شما باید جنبه های پیشرفته ای مانند حافظه دستی و مدیریت منابع ، مدیریت مناسب موارد گوشه ای ظریف ، نوشتن کد عمومی و کدی را که برای موارد خاص بهینه شده است و غیره در نظر بگیرید. خوشبختانه کتابخانه استاندارد C ++ در حال حاضر ظروفی را ارائه می دهد که از کیفیت بالایی ، کارآیی و آزمایش خوبی برخوردار هستند. توسعه کد های C ++ برای استفاده مجدد از آنها باعث خوشحالی است: در واقع ، استفاده از این ظروف در کد C ++ باعث افزایش بهره وری شما می شود ، زیرا کتابخانه استاندارد C ++ به شما امکان می دهد با کیفیت بالا از ساختار داده های رایج و مفید استفاده کنید ، که می توانید به راحتی از کد C ++ خود استفاده کنید. نگهدارندگان C ++ Standard Library ساعت ها به بررسی این ساختارهای داده و بهبود ، اصلاح و بهینه سازی کد اجرای C ++ خود می پردازند. در این دوره ، شما یاد خواهید گرفت که چگونه به راحتی از آن گنجینه در برنامه های C ++ خود استفاده مجدد کنید. به طور خاص ، شما در مورد std :: vector یاد خواهید گرفت ، که یک آرایه دینامیکی انعطاف پذیر است ، که باید کانتینر انتخابی پیش فرض در بسیاری از زمینه ها در برنامه های C ++ باشد. از مدیریت خودکار منابع (هم برای منابع حافظه و هم برای حافظه های غیر حافظه) که توسط std :: vector ارائه شده است ، لذت خواهید برد که به شما در توسعه کد C ++ کارآمد و مطمئن کمک می کند. همچنین خواهید دید که به عنوان مثال برای پرورش یک بردار ، همچنان که نیاز به طرح حافظه مجاور برای عناصر آن است ، چقدر راحت است. همچنین با استفاده از هر دو روش ظرف C ++ و الگوریتم های استاندارد کتابخانه ، در مورد عملیات مهم مانند درج ، حذف و جستجو در عناصر اطلاعات کسب خواهید کرد. در حقیقت ، ظروف و الگوریتم های استاندارد C ++ به نوعی مانند "نان و کره" هستند و با استفاده از هر دو می توانید کارهای بزرگی انجام دهید. نیازی به تجربه قبلی با کتابخانه استاندارد C ++ ندارید ، زیرا من طراحی عالی و انعطاف پذیر آن را بر اساس کانتینرها ، الگوریتم ها و تکرارکننده ها به شما آموزش می دهم ، و خواهید دید که چگونه کانتینرها با استفاده از تکرار کننده ها با الگوریتم ها سیم می شوند و چگونه می توانید از الگوریتم های مشابه با ظروف مختلف استفاده مجدد کنید. همچنین یاد خواهید گرفت که در برخی موارد خاص می توانید از یک ظرف استاندارد بالای سر خود استفاده کنید که آرایه هایی با اندازه ثابت C را در یک رابط C ++ امن با سطح بالا مناسب قرار دهد: این آرایه std :: است. من آن را در مقایسه با std :: vector مقایسه و مقایسه می کنم ، و شما جوانب مثبت و منفی هر یک را یاد خواهید گرفت. همچنین اگر به انتزاع سطح بالای C ++ مبتنی بر ساختار داده های لیست پیوندی مضاعف نیاز دارید ، نحوه استفاده از ظرف std :: را یاد خواهید گرفت. علاوه بر این ، دیدن الگوریتم های مشابه مورد استفاده در ظروف مختلف نیز به عنوان یک تجربه یادگیری تقویت کننده برای شما بسیار مناسب خواهد بود. من همچنین برخی از اشکالات ظریف را به شما نشان خواهم داد ، که به ویژه در کسانی که شروع به یادگیری ظروف کتابخانه استاندارد C ++ و نحوه رفع آنها می کنند ، اغلب وجود دارد. امیدوارم این باعث صرفه جویی در وقت و سردرد شما در حین برنامه نویسی C ++ شود. برای ادامه مهارت در این دوره ، فقط به یک دانش اساسی در مورد ویژگی های زبان C ++ نیاز دارید. پس از اتمام این دوره ، شما می توانید از ظروف با کیفیت بالا و آزمایش شده C ++ Standard Library مانند لیست های std :: vector، std :: array و std :: در کد C ++ خود استفاده کنید. شما دانش عملی در مورد آنها خواهید داشت ، و می توانید در مورد انتخاب یکی یا دیگری بر اساس مشکل موجود قضاوت درستی داشته باشید. همچنین در مورد عملیات مشترک مهم با این ظروف استاندارد ، مانند قرار دادن ، برداشتن و جستجو موارد ، دانش خواهید داشت.

سرفصل ها و درس ها

بررسی اجمالی دوره Course Overview

  • بررسی اجمالی دوره Course Overview

ذخیره توالی عناصر با محفظه استاندارد std :: vector Storing Sequences of Elements with the Standard std::vector Container

  • مقدمه Introduction

  • معرفی وکتور std :: Introducing std::vector

  • نسخه ی نمایشی: std :: وکتور در عمل Demo: std::vector in Action

  • نسخه ی نمایشی: std :: وکتور کلاسهای خود Demo: std::vector of Your Own Classes

  • عملیات اساسی با بردار std :: Basic Operations with std::vector

  • دسترسی ایمن به std :: vector Elements Safely Accessing std::vector Elements

  • نسخه ی نمایشی: سرریز بافر و دسترسی ایمن به عناصر در بردار std :: Demo: Buffer Overflow and Safe Element Access in std::vector

  • تجزیه و تحلیل سیاست رشد بردار std :: vector: اندازه در مقابل ظرفیت Analyzing std::vector Growth Policy: Size vs. Capacity

  • نکته مفید: ذخیره ظرفیت برای بهبود فشارهای push_back Perf Tip: Reserving Capacity to Improve push_back Times

  • خلاصه Summary

شکستن یخ با الگوریتم های استاندارد مفید: مرتب سازی بردار: بردار Breaking the Ice with Useful Standard Algorithms: Sorting std::vector

  • مقدمه Introduction

  • مرتب سازی std :: وکتور با std :: مرتب سازی Sorting std::vector with std::sort

  • تکرار کنندگان چیستند و چرا باید مراقبت کنید؟ What Are Iterators and Why Should You Care?

  • نسخه ی نمایشی: std :: مرتب سازی در عمل Demo: std::sort in Action

  • مرتب سازی با استفاده از سفارش سفارشی Sorting Using Custom Order

  • خلاصه Summary

درج ، حذف و جستجوی عناصر Inserting, Removing, and Searching Elements

  • مقدمه Introduction

  • درج عناصر با std :: vector :: insert Inserting Elements with std::vector::insert

  • اضافه بار اضافی std :: vector :: insert Additional Overloads of std::vector::insert

  • نسخه ی نمایشی: std :: vector :: درج در Action Demo: std::vector::insert in Action

  • حذف عناصر با اصطلاح Erase-remove Removing Elements with the Erase-remove Idiom

  • نسخه ی نمایشی: اصطلاح پاک کردن و حذف در عمل Demo: The Erase-remove Idiom in Action

  • نسخه ی نمایشی: رفع اشکال ظریف درگیر حذف اصطلاحات پاک کردن Demo: Fixing a Subtle Bug Involving the Erase-remove Idiom

  • جستجوی عناصر با std :: find and std :: find_if Searching for Elements with std::find and std::find_if

  • نسخه ی نمایشی: جستجو در عمل Demo: Searching in Action

  • نسخه ی نمایشی: جستجوی رشته بدون حساسیت به پرونده با std :: find_if Demo: Case-insensitive String Search with std::find_if

  • خلاصه Summary

محصور سازی ایمن آرایه هایی با اندازه ثابت با آرایه std :: Safely Encapsulating Fixed-size Arrays with std::array

  • مقدمه Introduction

  • std :: array: یک بسته بندی C ++ صفر سربار در اطراف آرایه های ساخته شده std::array: A Zero-overhead C++ Wrapper Around Built-in Arrays

  • عملیات مشترک با آرایه std :: Common Operations with std::array

  • استفاده مجدد از الگوریتم های استاندارد کتابخانه با آرایه std :: Reusing Standard Library’s Algorithms with std::array

  • نسخه ی نمایشی: آرایه std :: در Action Demo: std::array in Action

  • اجرای جداول جستجوی سریع بسیار کارآمد با آرایه std :: Implementing Very Efficient Fast Look-up Tables with std::array

  • خلاصه Summary

مدیریت لیست های پیوندی با لیست std :: Managing Linked-lists with std::list

  • مقدمه Introduction

  • معرفی لیست std ::: جوانب مثبت و منفی Introducing std::list: Pros and Cons

  • ایجاد لیست std :: ، درج و حذف عناصر Creating std::list, Inserting and Removing Elements

  • دسترسی به عناصر در لیست std :: Accessing Elements in std::list

  • دو طرفه در مقابل تکرار فقط به جلو ، و لیست STD :: forward_ Bidirectional vs. Forward-only Iteration, and std::forward_list

  • نسخه ی نمایشی: std :: لیست در عمل Demo: std::list in Action

  • نسخه ی نمایشی: اشکال ظریف هنگام مرتب سازی لیست std :: Demo: Subtle Bug When Sorting std::list

  • تجزیه و تحلیل و رفع لیست std :: مرتب سازی اشکال Analyzing and Fixing the std::list Sorting Bug

  • نسخه ی نمایشی: مرتب سازی لیست STD :: در عمل Demo: Sorting std::list in Action

  • خلاصه و متشکرم Summary and Thank You

نمایش نظرات

آموزش C ++ Standard Library: ظروف متوالی
جزییات دوره
2h 25m
45
Pluralsight (پلورال سایت) Pluralsight (پلورال سایت)
(آخرین آپدیت)
22
4.7 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Giovanni Dicanio Giovanni Dicanio

Giovanni Dicanio یک برنامه نویس رایانه ای است که هم در سیستم عامل cross-platform C و C ++ و هم در توسعه سیستم عامل ویندوز متخصص است. جیووانی مقالات برنامه نویسی رایانه ای را در C ++ ، OpenGL و سایر موضوعات برنامه نویسی در مجلات رایانه ای ایتالیا نوشت. وی اخیراً برخی از مقالات ویژگی های C ++ را برای مجله MSDN نیز تألیف کرده است. او همچنین به برخی از پروژه های منبع باز کد کمک کرد. تجربه برنامه نویسی رایانه ای او به روزهای طلایی Commodore 64 و Amiga 500 با حضور Basic و Assembly برمی گردد. جیووانی دوست دارد به افراد در حل مشکلات برنامه نویسی C و C ++ در انجمن هایی از جمله Stack Overflow کمک کند. وی از سال 2007 به دلیل مشارکت در جامعه توسعه C ++ ، ابتدا در گروه های خبری NNTP و سپس در مجامع ، جایزه Microsoft MVP ++ Visual C + را برگزار کرده است.