logo-textmainwebinarforumstudyingcoursestestsGBwebicons-08cartmessageslogoutloginlikegobacknoticearrow-downarrow-uparrow-leftarrow-rightarrow-right-biglike-smallblogsettingshelpviewscommentstagsmoremenuinstagramvkvkontaktefacebookgooglegoogle_oauth2g_plus-icn-01link_icn-01mailto_icn-01ok_icn-01#double-arrow-leftavatarprobationcog-smallcheckmore-iconcritical-noticecareercheckx-icnedit-icnemergency-helpicon-callbackicon-callback-hideicon-phonesmile-icnunsmile-icnlike-miniviews-minicomments-minigroup-minipricecalendargroup-ocertificateclassroomrecruitrecruit-hoverplaygithublinkedinbitbuckethometwitterprojecttrashmarkrecruitwriterefuserefreshmark-filledicon-pulsestarsearchproject-rocketyoutubetelegramsendmore-horizontalcalendar-2listbookslaptopcaseprice-badge-cornerpassword-hidepassword-showgive_me_my_moneymoney_sendquestion_smallquestionnairelocklesson-bellmenu_hmbrgrinfo-icnlinkpresentpdfdoneblankwinkspecial offertimerandroidmailrugmailgoogleyandexramblerbook-openbook-open-with-arrowcert-filledcert-emptyplay-2collapse-panelupload_arrowhomework-donereflected-eyearchivedownloadtimeronline-webinararrowvideounknown_asset_typeimagegwc-likegwc-viewgwc-commentgwc-playguruflag-ruflag-gbfire-in-the-holeon-airvery-likeicon-web-faculty-quartericon-android-faculty-quarterios-faculty-quarterjava-faculty-quarterpython-faculty-quartericon-gu-badgeicon-cursor-pointericon-quotesicon-exclamation-signplaceholderteacher-complaintpopup-close-buttonschedulebriefmentorintensiveopen-bookmousearrow-down-trianglescroll-featherfoldergroup

Идиома RAII в программировании на С++

В программировании на С++ и других языках, где контроль за ресурсами осуществляется вручную, очень часто возникает необходимость затребовать ресурс (например, память) в начале определенного блока кода, и освободить этот ресурс в конце блока. Это означает, что программист всегда должен помнить об освобождении ресурса, учитывать это как при нормальном ходе выполнения программы, так и в случае возникновения ошибочных ситуаций, обработке исключений и т. п.

Очень легко забыть освободить ресурс, что может привести к сбоям, к зависанию программы и другим неприятным и сложным в отладке эффектам. Идиома программного дизайна RAII (англ. Resource Acquisition Is Initialization ("получение ресурса есть инициализация")) позволяет автоматизировать освобождение ресурсов, освободив программиста от лишнего беспокойства.

В ходе этого вебинара будет рассмотрена концепция RAII применительно к языку C++, от идеи до разработки собственных RAII-классов. Также мы рассмотрим различные RAII-классы из стандартной библиотеки С++11.

Автор и ведущий вебинара - Ломакин Вячеслав
Специалист по языкам С и C++.
Работал в корпорации МИГ программистом ПО для лётных тренажёров на языке С++.
Автор и участник различных коммерческих проектов, от экспертных систем до ПО для интернет-коммерции и игровых программ.


Разработка легче при правильном подходе - профессия «Разработчик Microsoft».

Бесплатная запись на вебинар