{"id":369,"date":"2023-03-23T11:45:19","date_gmt":"2023-03-23T11:45:19","guid":{"rendered":"https:\/\/www.modernescpp.com\/?page_id=369"},"modified":"2025-12-25T14:04:13","modified_gmt":"2025-12-25T14:04:13","slug":"my-books","status":"publish","type":"page","link":"https:\/\/www.modernescpp.com\/index.php\/my-books\/","title":{"rendered":"Rainer Grimm\u2019s Books"},"content":{"rendered":"\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-1pb52p-9167459b9ad887b3a9669038ae7ea9ff\">\n.avia-section.av-1pb52p-9167459b9ad887b3a9669038ae7ea9ff{\nbackground-color:#f3f3f3;\nbackground-image:unset;\n}\n<\/style>\n<div id='my-portfolio'  class='avia-section av-1pb52p-9167459b9ad887b3a9669038ae7ea9ff main_color avia-section-default avia-no-shadow  avia-builder-el-0  avia-builder-el-no-sibling  avia-bg-style-scroll container_wrap sidebar_right'  ><div class='container av-section-cont-open' ><main  role=\"main\" itemprop=\"mainContentOfPage\"  class='template-page content  av-content-small alpha units'><div class='post-entry post-entry-type-page post-entry-369'><div class='entry-content-wrapper clearfix'>\n<div  class='flex_column av-1kmnhl-474182628bb46818afdc36a9db925ef0 av_one_full  avia-builder-el-1  el_before_av_one_half  avia-builder-el-first  first flex_column_div  '     ><p>\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-lk6uvhb1-f2989ffaf4fb99f4f582bd1f7be12e44\">\n#top .av-special-heading.av-lk6uvhb1-f2989ffaf4fb99f4f582bd1f7be12e44{\npadding-bottom:10px;\n}\nbody .av-special-heading.av-lk6uvhb1-f2989ffaf4fb99f4f582bd1f7be12e44 .av-special-heading-tag .heading-char{\nfont-size:25px;\n}\n.av-special-heading.av-lk6uvhb1-f2989ffaf4fb99f4f582bd1f7be12e44 .av-subheading{\nfont-size:15px;\n}\n<\/style>\n<div  class='av-special-heading av-lk6uvhb1-f2989ffaf4fb99f4f582bd1f7be12e44 av-special-heading-h2  avia-builder-el-2  el_before_av_textblock  avia-builder-el-first '><h2 class='av-special-heading-tag'  itemprop=\"headline\"  >Rainer Grimm\u2019s Books<\/h2><div class=\"special-heading-border\"><div class=\"special-heading-inner-border\"><\/div><\/div><\/div><br \/>\n<section  class='av_textblock_section av-lk6uw1wz-ed82c353c540b8bb90a298a429a9dfd0 '   itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div class='avia_textblock'  itemprop=\"text\" ><p>Rainer Grimm has written and published numerous books to teach and empower people in the field of modern C++. Below you will find more information about each book, as well as a direct link to purchase the books from one of the retailers.<\/p>\n<\/div><\/section><\/p><\/div>\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-c6tcp-889a8c79fbfc8900ec487ff41584c5ad\">\n.flex_column.av-c6tcp-889a8c79fbfc8900ec487ff41584c5ad{\nborder-width:1px;\nborder-color:#b70d18;\nborder-style:solid;\nborder-radius:10px 10px 10px 10px;\npadding:20px 20px 20px 20px;\nbackground-color:#ffffff;\n}\n<\/style>\n<div  class='flex_column av-c6tcp-889a8c79fbfc8900ec487ff41584c5ad av_one_half  avia-builder-el-4  el_after_av_one_full  el_before_av_one_half  first flex_column_div  column-top-margin'     ><p>\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-37sn9t-6ff6b40e62eab1e9282373fea53c456f\">\n.av_font_icon.av-37sn9t-6ff6b40e62eab1e9282373fea53c456f{\ncolor:#b70d18;\nborder-color:#b70d18;\n}\n.av_font_icon.av-37sn9t-6ff6b40e62eab1e9282373fea53c456f .av-icon-char{\nfont-size:50px;\nline-height:50px;\n}\n<\/style>\n<span  class='av_font_icon av-37sn9t-6ff6b40e62eab1e9282373fea53c456f avia_animate_when_visible av-icon-style- avia-icon-pos-center avia-icon-animate'><span class='av-icon-char' aria-hidden='true' data-av_icon='\ue84f' data-av_iconfont='entypo-fontello' ><\/span><\/span><br \/>\n<section  class='av_textblock_section av-awwkp-af71c26bca31b5bc887a944b2c5e8b0f '   itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div class='avia_textblock'  itemprop=\"text\" ><h3 class=\"iconbox_content_title \" style=\"text-align: center;\">C++20 Get the Details<\/h3>\n<\/div><\/section><br \/>\n\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-2u99qx-82838c3cc711e1854a0e2dbc3b4529a8\">\n.avia-image-container.av-2u99qx-82838c3cc711e1854a0e2dbc3b4529a8 img.avia_image{\nbox-shadow:none;\n}\n.avia-image-container.av-2u99qx-82838c3cc711e1854a0e2dbc3b4529a8 .av-image-caption-overlay-center{\ncolor:#ffffff;\n}\n<\/style>\n<div  class='avia-image-container av-2u99qx-82838c3cc711e1854a0e2dbc3b4529a8 av-styling- avia-align-center  avia-builder-el-7  el_after_av_textblock  el_before_av_textblock '   itemprop=\"image\" itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/ImageObject\" ><div class=\"avia-image-container-inner\"><div class=\"avia-image-overlay-wrap\"><a href=\"https:\/\/leanpub.com\/c20\" class='avia_image' target=\"_blank\" rel=\"noopener noreferrer\"><img decoding=\"async\" class='wp-image-380 avia-img-lazy-loading-not-380 avia_image ' src=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/03\/CDM-RG_Books_RG_C20_1080x1080.jpg\" alt='' title='Program_1080x1080'  height=\"1080\" width=\"1080\"  itemprop=\"thumbnailUrl\" srcset=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/03\/CDM-RG_Books_RG_C20_1080x1080.jpg 1080w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/03\/CDM-RG_Books_RG_C20_1080x1080-300x300.jpg 300w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/03\/CDM-RG_Books_RG_C20_1080x1080-1024x1024.jpg 1024w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/03\/CDM-RG_Books_RG_C20_1080x1080-150x150.jpg 150w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/03\/CDM-RG_Books_RG_C20_1080x1080-768x768.jpg 768w\" sizes=\"(max-width: 1080px) 100vw, 1080px\" \/><\/a><\/div><\/div><\/div><br \/>\n<section  class='av_textblock_section av-2scqxd-7f49a63c2b6c6424477026480eac827d '   itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div class='avia_textblock'  itemprop=\"text\" ><p>C++20 is the next big C++ standard after C++11. As C++11 did, C++20 changes the way we program modern C++. This change is, in particular, due to the big four of C++20: ranges, coroutines, concepts, and modules.<\/p>\n<\/div><\/section><br \/>\n<div  class='togglecontainer av-9iuvl-00800a3568d9cd83bb670f63d8ebe81d  avia-builder-el-9  el_after_av_textblock  avia-builder-el-last  toggle_close_all' >\n<section class='av_toggle_section av-2f1d7l-49bc86c18230df0eda837fc87d2f4e6b'  itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div role=\"tablist\" class=\"single_toggle\" data-tags=\"{All} \"  ><p data-fake-id='#toggle-id-1' class='toggler   '  itemprop=\"headline\"  role='tab' tabindex='0' aria-controls='toggle-id-1'>Read more ...<span class=\"toggle_icon\"><span class=\"vert_icon\"><\/span><span class=\"hor_icon\"><\/span><\/span><\/p><div id='toggle-id-1' class='toggle_wrap  '  ><div class='toggle_content invers-color '  itemprop=\"text\" ><p>The book C++20 is both: a tutorial and a reference for the C++20 standard. It teaches you C++20 and provides you with the details of this new thrilling C++ standard. The thrilling factor is mainly due to the big four of C++20.<\/p>\n<ul>\n<li>Concepts change the way we think and program templates. They are semantic categories for the template parameters and enable you to express your intention directly in the type system. If something goes wrong, you get a clear error message.<\/li>\n<li>The new ranges library enables it to perform algorithms directly on the container, compose the algorithm with the pipe symbol, and apply them to infinite data streams.<\/li>\n<li>Thanks to coroutines, asynchronous programming in C++ becomes mainstream. Coroutines are the base for cooperative tasks, event loops, infinite data streams, or pipelines.<\/li>\n<li>Modules overcome the restrictions of header files. They promise a lot. For example, the separation of header and source files becomes as obsolete as the preprocessor. In the end, we have faster built time and an easier way to build packages.<\/li>\n<\/ul>\n<p>Get more information here: <a href=\"https:\/\/leanpub.com\/c20\">C++: Get the Details<\/a><\/p>\n<\/div><\/div><\/div><\/section>\n<\/div><\/p><\/div>\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-26m6ux-8e794af418157077742d8b2567f8e411\">\n.flex_column.av-26m6ux-8e794af418157077742d8b2567f8e411{\nborder-width:1px;\nborder-color:#b70d18;\nborder-style:solid;\nborder-radius:10px 10px 10px 10px;\npadding:20px 20px 20px 20px;\nbackground-color:#ffffff;\n}\n<\/style>\n<div  class='flex_column av-26m6ux-8e794af418157077742d8b2567f8e411 av_one_half  avia-builder-el-10  el_after_av_one_half  el_before_av_one_half  flex_column_div  column-top-margin'     ><p>\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-24odqp-d2cc7964b7da0876cae1acdb2cc74223\">\n.av_font_icon.av-24odqp-d2cc7964b7da0876cae1acdb2cc74223{\ncolor:#b70d18;\nborder-color:#b70d18;\n}\n.av_font_icon.av-24odqp-d2cc7964b7da0876cae1acdb2cc74223 .av-icon-char{\nfont-size:50px;\nline-height:50px;\n}\n<\/style>\n<span  class='av_font_icon av-24odqp-d2cc7964b7da0876cae1acdb2cc74223 avia_animate_when_visible av-icon-style- avia-icon-pos-center avia-icon-animate'><span class='av-icon-char' aria-hidden='true' data-av_icon='\ue84f' data-av_iconfont='entypo-fontello' ><\/span><\/span><br \/>\n<section  class='av_textblock_section av-1us44h-3d47577d2ca65973a63609a0af31652c '   itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div class='avia_textblock'  itemprop=\"text\" ><h3 class=\"iconbox_content_title \" style=\"text-align: center;\">The C++20 Standard Library<\/h3>\n<\/div><\/section><br \/>\n\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-1qpzbl-9f5e0fa2edac83e9d6f2b90f93ff17e7\">\n.avia-image-container.av-1qpzbl-9f5e0fa2edac83e9d6f2b90f93ff17e7 img.avia_image{\nbox-shadow:none;\n}\n.avia-image-container.av-1qpzbl-9f5e0fa2edac83e9d6f2b90f93ff17e7 .av-image-caption-overlay-center{\ncolor:#ffffff;\n}\n<\/style>\n<div  class='avia-image-container av-1qpzbl-9f5e0fa2edac83e9d6f2b90f93ff17e7 av-styling- avia-align-center  avia-builder-el-13  el_after_av_textblock  el_before_av_textblock '   itemprop=\"image\" itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/ImageObject\" ><div class=\"avia-image-container-inner\"><div class=\"avia-image-overlay-wrap\"><a href=\"https:\/\/leanpub.com\/cpplibrary\" class='avia_image' target=\"_blank\" rel=\"noopener noreferrer\"><img decoding=\"async\" class='wp-image-553 avia-img-lazy-loading-not-553 avia_image ' src=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_The-C-Standard-Library-new_1080x1080-1.jpg\" alt='' title='CDM-RG_Books_RG_The-C-Standard-Library-new_1080x1080'  height=\"1080\" width=\"1080\"  itemprop=\"thumbnailUrl\" srcset=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_The-C-Standard-Library-new_1080x1080-1.jpg 1080w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_The-C-Standard-Library-new_1080x1080-1-300x300.jpg 300w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_The-C-Standard-Library-new_1080x1080-1-1024x1024.jpg 1024w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_The-C-Standard-Library-new_1080x1080-1-150x150.jpg 150w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_The-C-Standard-Library-new_1080x1080-1-768x768.jpg 768w\" sizes=\"(max-width: 1080px) 100vw, 1080px\" \/><\/a><\/div><\/div><\/div><br \/>\n<section  class='av_textblock_section av-1ndwsh-be2ca68db8a39be94db7323649b377e6 '   itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div class='avia_textblock'  itemprop=\"text\" ><p>With the current C++20 standard, C++ offers numerous libraries. The main goal of this book is to provide you with the necessary information about all standard C++ libraries in a compact form.<\/p>\n<\/div><\/section><br \/>\n<div  class='togglecontainer av-1fwn49-f528a5f82f607b8e1ccbddeac3f48d29  avia-builder-el-15  el_after_av_textblock  avia-builder-el-last  toggle_close_all' >\n<section class='av_toggle_section av-4pw0x-f9ff62f53570445f5375686cd8b4b172'  itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div role=\"tablist\" class=\"single_toggle\" data-tags=\"{All} \"  ><p data-fake-id='#toggle-id-2' class='toggler   '  itemprop=\"headline\"  role='tab' tabindex='0' aria-controls='toggle-id-2'>Read more ...<span class=\"toggle_icon\"><span class=\"vert_icon\"><\/span><span class=\"hor_icon\"><\/span><\/span><\/p><div id='toggle-id-2' class='toggle_wrap  '  ><div class='toggle_content invers-color '  itemprop=\"text\" ><div class=\"tve-content-box-background\" data-css=\"tve-u-1874dbe3206\"><\/div>\n<div class=\"tve-cb\">\n<div class=\"thrv_wrapper thrv_text_element\">\n<p>The goal of The C++ Standard Library is to provide a concise yet comprehensive reference to the C++ standard library in approximately 300 pages. The book assumes that readers already have a solid understanding of C++. With this background, you will gain the greatest benefit from the material presented.<\/p>\n<p>If C++ is new to you, it is recommended that you begin with a textbook covering the core language. Once you have mastered the fundamentals of C++, this book will help you take the next major step by deepening your understanding of the standard library.<\/p>\n<p>In addition, the book includes more than 100 fully working code examples that expand on the code snippets presented by Rainer Grimm. These examples allow you to directly connect theory with practice, enabling a deeper and more effective learning experience.<\/p>\n<\/div>\n<\/div>\n<p>Get more information here: <a class=\"\" href=\"https:\/\/leanpub.com\/cpplibrary\">The C++ Standard Library<\/a><\/p>\n<\/div><\/div><\/div><\/section>\n<\/div><\/p><\/div>\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-124v4h-c81757e00bb7fcf4175d65af9ac75365\">\n.flex_column.av-124v4h-c81757e00bb7fcf4175d65af9ac75365{\nborder-width:1px;\nborder-color:#b70d18;\nborder-style:solid;\nborder-radius:10px 10px 10px 10px;\npadding:20px 20px 20px 20px;\nbackground-color:#ffffff;\n}\n<\/style>\n<div  class='flex_column av-124v4h-c81757e00bb7fcf4175d65af9ac75365 av_one_half  avia-builder-el-16  el_after_av_one_half  el_before_av_one_half  first flex_column_div  column-top-margin'     ><p>\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-xq8h5-2cefb9679021ea56070fcccc4db0b673\">\n.av_font_icon.av-xq8h5-2cefb9679021ea56070fcccc4db0b673{\ncolor:#b70d18;\nborder-color:#b70d18;\n}\n.av_font_icon.av-xq8h5-2cefb9679021ea56070fcccc4db0b673 .av-icon-char{\nfont-size:50px;\nline-height:50px;\n}\n<\/style>\n<span  class='av_font_icon av-xq8h5-2cefb9679021ea56070fcccc4db0b673 avia_animate_when_visible av-icon-style- avia-icon-pos-center avia-icon-animate'><span class='av-icon-char' aria-hidden='true' data-av_icon='\ue84f' data-av_iconfont='entypo-fontello' ><\/span><\/span><br \/>\n<section  class='av_textblock_section av-lk73assw-6a0c807653739797ee5b363900975c97 '   itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div class='avia_textblock'  itemprop=\"text\" ><h3 class=\"iconbox_content_title \" style=\"text-align: center;\">C++ Core Guidelines: Best Practices for Modern C++<\/h3>\n<\/div><\/section><br \/>\n\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-s6o29-8f175154c7d5f983fdc230845e34635a\">\n.avia-image-container.av-s6o29-8f175154c7d5f983fdc230845e34635a img.avia_image{\nbox-shadow:none;\n}\n.avia-image-container.av-s6o29-8f175154c7d5f983fdc230845e34635a .av-image-caption-overlay-center{\ncolor:#ffffff;\n}\n<\/style>\n<div  class='avia-image-container av-s6o29-8f175154c7d5f983fdc230845e34635a av-styling- avia-align-center  avia-builder-el-19  el_after_av_textblock  el_before_av_textblock '   itemprop=\"image\" itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/ImageObject\" ><div class=\"avia-image-container-inner\"><div class=\"avia-image-overlay-wrap\"><a href=\"https:\/\/www.pearson.com\/en-us\/subject-catalog\/p\/c-core-guidelines-explained-best-practices-for-modern-c\/P200000007274\/9780136875611\" class='avia_image' target=\"_blank\" rel=\"noopener noreferrer\"><img decoding=\"async\" class='wp-image-554 avia-img-lazy-loading-not-554 avia_image ' src=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_C-Core-Guidelines_1080x1080.jpg\" alt='' title='CDM-RG_Books_RG_C-Core-Guidelines_1080x1080'  height=\"1080\" width=\"1080\"  itemprop=\"thumbnailUrl\" srcset=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_C-Core-Guidelines_1080x1080.jpg 1080w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_C-Core-Guidelines_1080x1080-300x300.jpg 300w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_C-Core-Guidelines_1080x1080-1024x1024.jpg 1024w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_C-Core-Guidelines_1080x1080-150x150.jpg 150w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_C-Core-Guidelines_1080x1080-768x768.jpg 768w\" sizes=\"(max-width: 1080px) 100vw, 1080px\" \/><\/a><\/div><\/div><\/div><br \/>\n<section  class='av_textblock_section av-lk73c291-b6a4f6159938c5e22cfa401565737cce '   itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div class='avia_textblock'  itemprop=\"text\" ><p>The official C++ Core Guidelines provide consistent best practices for writing outstanding modern C++ code, but they aren\u2019t organized for easy usage by working developers.<\/p>\n<\/div><\/section><br \/>\n<div  class='togglecontainer av-lk73fesx-90b66c7d1b8ad76451b22574103a24d7  avia-builder-el-21  el_after_av_textblock  avia-builder-el-last  toggle_close_all' >\n<section class='av_toggle_section av-lk73fd80-e4e8e3dcc6a0469bfbd0a6f3d8bd7e02'  itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div role=\"tablist\" class=\"single_toggle\" data-tags=\"{All} \"  ><p data-fake-id='#toggle-id-3' class='toggler   '  itemprop=\"headline\"  role='tab' tabindex='0' aria-controls='toggle-id-3'>Read more ...<span class=\"toggle_icon\"><span class=\"vert_icon\"><\/span><span class=\"hor_icon\"><\/span><\/span><\/p><div id='toggle-id-3' class='toggle_wrap  '  ><div class='toggle_content invers-color '  itemprop=\"text\" ><div class=\"tve-content-box-background\" data-css=\"tve-u-1874dbe3206\"><\/div>\n<div class=\"tve-cb\">\n<div class=\"thrv_wrapper thrv_text_element\">In C++ Core Guidelines Explained, expert C++ instructor Rainer Grimm has distilled them to their essence, removing esoterica, sharing new insights and context, and presenting well-tested examples from his own training courses.<\/div>\n<div>\n<blockquote>\n<p>\u201cWe are very pleased to see Rainer Grimm applying his teaching skills and industrial background to tackling the hard and necessary task of making the C++ Core Guidelines accessible to more people.\u201d<\/p>\n<p>\u2014Bjarne Stroustrup and Herb Sutter, co-editors, C++ Core Guidelines<\/p>\n<\/blockquote>\n<\/div>\n<\/div>\n<p>Get more information here: <a class=\"\" href=\"https:\/\/www.oreilly.com\/library\/view\/c-core-guidelines\/9780136875758\/\">C++ Core Guidelines: Best Practices for Modern C++<\/a><\/p>\n<\/div><\/div><\/div><\/section>\n<\/div><\/p><\/div>\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-kfu95-b6626360f0147b56d1a4e1985e960bfc\">\n.flex_column.av-kfu95-b6626360f0147b56d1a4e1985e960bfc{\nborder-width:1px;\nborder-color:#b70d18;\nborder-style:solid;\nborder-radius:10px 10px 10px 10px;\npadding:20px 20px 20px 20px;\nbackground-color:#ffffff;\n}\n<\/style>\n<div  class='flex_column av-kfu95-b6626360f0147b56d1a4e1985e960bfc av_one_half  avia-builder-el-22  el_after_av_one_half  avia-builder-el-last  flex_column_div  column-top-margin'     ><p>\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-gfum1-6a9b1f07ee3a851e2977737c54ba669c\">\n.av_font_icon.av-gfum1-6a9b1f07ee3a851e2977737c54ba669c{\ncolor:#b70d18;\nborder-color:#b70d18;\n}\n.av_font_icon.av-gfum1-6a9b1f07ee3a851e2977737c54ba669c .av-icon-char{\nfont-size:50px;\nline-height:50px;\n}\n<\/style>\n<span  class='av_font_icon av-gfum1-6a9b1f07ee3a851e2977737c54ba669c avia_animate_when_visible av-icon-style- avia-icon-pos-center avia-icon-animate'><span class='av-icon-char' aria-hidden='true' data-av_icon='\ue84f' data-av_iconfont='entypo-fontello' ><\/span><\/span><br \/>\n<section  class='av_textblock_section av-lk73b6gh-b61d65c879c7b3791493e91a2372ae03 '   itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div class='avia_textblock'  itemprop=\"text\" ><h3 class=\"iconbox_content_title \" style=\"text-align: center;\">Concurrency with Modern C++<\/h3>\n<\/div><\/section><br \/>\n\n<style type=\"text\/css\" data-created_by=\"avia_inline_auto\" id=\"style-css-av-81m7l-383578b8138b205e4e06c2a89ddb902c\">\n.avia-image-container.av-81m7l-383578b8138b205e4e06c2a89ddb902c img.avia_image{\nbox-shadow:none;\n}\n.avia-image-container.av-81m7l-383578b8138b205e4e06c2a89ddb902c .av-image-caption-overlay-center{\ncolor:#ffffff;\n}\n<\/style>\n<div  class='avia-image-container av-81m7l-383578b8138b205e4e06c2a89ddb902c av-styling- avia-align-center  avia-builder-el-25  el_after_av_textblock  el_before_av_textblock '   itemprop=\"image\" itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/ImageObject\" ><div class=\"avia-image-container-inner\"><div class=\"avia-image-overlay-wrap\"><a href=\"https:\/\/leanpub.com\/concurrencywithmodernc\" class='avia_image' target=\"_blank\" rel=\"noopener noreferrer\"><img decoding=\"async\" class='wp-image-555 avia-img-lazy-loading-not-555 avia_image ' src=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_Concurrency-with-Modern-C_1080x1080.jpg\" alt='' title='CDM-RG_Books_RG_Concurrency-with-Modern-C_1080x1080'  height=\"1080\" width=\"1080\"  itemprop=\"thumbnailUrl\" srcset=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_Concurrency-with-Modern-C_1080x1080.jpg 1080w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_Concurrency-with-Modern-C_1080x1080-300x300.jpg 300w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_Concurrency-with-Modern-C_1080x1080-1024x1024.jpg 1024w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_Concurrency-with-Modern-C_1080x1080-150x150.jpg 150w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2023\/04\/CDM-RG_Books_RG_Concurrency-with-Modern-C_1080x1080-768x768.jpg 768w\" sizes=\"(max-width: 1080px) 100vw, 1080px\" \/><\/a><\/div><\/div><\/div><br \/>\n<section  class='av_textblock_section av-lk73c89x-8dc873eabbd089f0b514cf34f498e108 '   itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div class='avia_textblock'  itemprop=\"text\" ><p>C++11 is the first C++ standard that deals with concurrency. The story goes on with C++17, C++20, and will continue with C++23.<\/p>\n<\/div><\/section><br \/>\n<div  class='togglecontainer av-lk73ivu1-c44098a45672b098f6c32c88a7ed6941  avia-builder-el-27  el_after_av_textblock  avia-builder-el-last  toggle_close_all' >\n<section class='av_toggle_section av-lk73iukh-2749d9e87528d54d9bca3d4af7bd6724'  itemscope=\"itemscope\" itemtype=\"https:\/\/schema.org\/CreativeWork\" ><div role=\"tablist\" class=\"single_toggle\" data-tags=\"{All} \"  ><p data-fake-id='#toggle-id-4' class='toggler   '  itemprop=\"headline\"  role='tab' tabindex='0' aria-controls='toggle-id-4'>Read more ...<span class=\"toggle_icon\"><span class=\"vert_icon\"><\/span><span class=\"hor_icon\"><\/span><\/span><\/p><div id='toggle-id-4' class='toggle_wrap  '  ><div class='toggle_content invers-color '  itemprop=\"text\" ><div class=\"tve-content-box-background\" data-css=\"tve-u-1874dbe3206\"><\/div>\n<div class=\"tve-cb\">\n<div class=\"thrv_wrapper thrv_text_element\">\n<p data-start=\"158\" data-end=\"331\">This book provides a detailed overview of both current and upcoming concurrency features in C++. It covers the underlying theory as well as extensive practical applications.<\/p>\n<p data-start=\"333\" data-end=\"627\">C++11 and C++14 introduced the fundamental building blocks for writing concurrent and parallel programs. With C++17, the Standard Template Library (STL) was extended with parallel algorithms, allowing many standard algorithms to be executed sequentially, in parallel, or in a vectorized manner.<\/p>\n<p data-start=\"629\" data-end=\"955\">The evolution of concurrency in C++ continues. C++20 added major features such as coroutines, atomic smart pointers, semaphores, and latches and barriers. Looking ahead to C++23, further enhancements are anticipated, including executors, extended futures, transactional memory, and additional concurrency-related capabilities.<\/p>\n<p data-start=\"957\" data-end=\"1208\">The book explains the details of concurrency in modern C++ and is complemented by nearly 200 fully working code examples. These examples allow readers to effectively combine theory with hands-on practice and gain a deeper understanding of the subject.<\/p>\n<p data-start=\"1210\" data-end=\"1333\">As concurrency is inherently complex, the book highlights common pitfalls and demonstrates proven techniques to avoid them.<\/p>\n<\/div>\n<\/div>\n<p>Get more information here: <a class=\"\" href=\"https:\/\/leanpub.com\/concurrencywithmodernc\">Concurrency with Modern C++<\/a><\/p>\n<\/div><\/div><\/div><\/section>\n<\/div><\/p><\/div><\/div><\/div><\/main><!-- close content main element --><\/div><\/div><div id='after_section_1'  class='main_color av_default_container_wrap container_wrap sidebar_right'  ><div class='container av-section-cont-open' ><div class='template-page content  av-content-small alpha units'><div class='post-entry post-entry-type-page post-entry-369'><div class='entry-content-wrapper clearfix'>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":380,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-369","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/pages\/369","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/comments?post=369"}],"version-history":[{"count":57,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/pages\/369\/revisions"}],"predecessor-version":[{"id":11355,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/pages\/369\/revisions\/11355"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/media\/380"}],"wp:attachment":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/media?parent=369"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}