{"id":2019,"date":"2022-12-08T08:47:00","date_gmt":"2022-12-08T07:47:00","guid":{"rendered":"http:\/\/becpp.org\/blog\/?p=2019"},"modified":"2022-12-08T09:24:33","modified_gmt":"2022-12-08T08:24:33","slug":"next-becpp-ug-meeting-planned-for-january-17th-2023","status":"publish","type":"post","link":"https:\/\/becpp.org\/blog\/2022\/12\/08\/next-becpp-ug-meeting-planned-for-january-17th-2023\/","title":{"rendered":"Next BeCPP UG Meeting Planned for January 17th, 2023"},"content":{"rendered":"<p>I&#8217;m happy to announce that the next meeting of the Belgian C++ Users Group is planned for <strong>Tuesday January 17th, 2023<\/strong> at 18:00 at <strong><a href=\"https:\/\/goo.gl\/maps\/YRAapisyvd4ahHM5A\" target=\"_blank\" rel=\"noopener noreferrer\">Medicim \/ Envista<\/a><\/strong>.<\/p>\n<p>Medicim \/ Envista ( <a href=\"https:\/\/www2.medicim.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/www2.medicim.com\/<\/a> ) is sponsoring this event by providing the location, drinks and catering.<\/p>\n<p><center><a href=\"https:\/\/www2.medicim.com\/\" target=\"_blank\" rel=\"noopener noreferrer\"><img decoding=\"async\" class=\"size-full wp-image-630 alignnone\" src=\"https:\/\/becpp.org\/blog\/wp-content\/uploads\/2022\/12\/Logo-Medicim.png\" alt=\"Medicim Logo\" width=\"150\" style=\"vertical-align: middle\"><img decoding=\"async\" class=\"size-full wp-image-630 alignnone\" src=\"https:\/\/becpp.org\/blog\/wp-content\/uploads\/2022\/12\/Logo-Envista.png\" alt=\"Envista Logo\" width=\"250\" style=\"vertical-align: middle\"><\/a><\/center><\/p>\n<p>The agenda is as follows:<\/p>\n<ul>\n<li><strong><span style=\"color: #008000;\">18:00:<\/span> <\/strong>Reception with food.<\/li>\n<li><strong><span style=\"color: #008000;\">18:30:<\/span> <\/strong>Session 1: <strong>Constraints and Concepts<\/strong> (Peter Van Weert)<br \/>\n<em>This presentation consists of two parts:<br \/>\nFirst, I explain how you can, and more importantly should, constrain your template arguments using requires clauses and, typically, concepts. Doing so results in more readable compilation errors, self-documenting template definitions, and easier, more expressive template specialization.<br \/>\nNext, I show how you can define your own concepts using the new syntax introduced in C++20. Quite some new syntax to learn, for sure, but you\u2019ll quickly see that constraints and concepts are far easier to master (or at least understand) than the more advanced SFINAE techniques (std::enable_if_t, std::void_t, &#8230;) they essentially supersede.<\/em><\/li>\n<li><strong><span style=\"color: #008000;\">19:30:<\/span> <\/strong>Break<\/li>\n<li><strong><span style=\"color: #008000;\">19:45:<\/span> <\/strong>Session 2: <strong>Space Invaders: The Spaceship Operator is upon us<\/strong> (Lieven de Cock)<br \/>\n<em>Before C++20 we had to write 6 comparison operators for our user defined types (or even more). For sure, a tedious task. All this gets simplified with the introduction of the spaceship operator.<br \/>\nWhat happens to your code, when you turn on &#8220;-std=c++20&#8221; even before we go near the spaceship operator, did your build break? Why does that happen? We will first investigate, another new feature of C++20, the rewriting rules, and how that impacts your code base. And then we will dissect the spaceship operator, from a using perspective, and from an implementation perspective. Oh yes, comparison categories, what are those, and why are these important with respect to the spaceship operator? All will be answered, what initially looked so simple, does require some extra thoughts it seems to correctly use the tool.<\/em><\/li>\n<li><strong><span style=\"color: #008000;\">20:45:<\/span> <\/strong>Introduction to Medicim \/ Envista, followed by a drink.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/amzn.to\/2ZDHCCu\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1003 aligncenter\" src=\"https:\/\/becpp.org\/blog\/wp-content\/uploads\/2022\/06\/pro_cpp_5th.png\" alt=\"Professional C++, 5th Edition\" width=\"100\" height=\"125\"><\/a><br \/>\nWe will be giving away a copy of <a href=\"https:\/\/amzn.to\/2ZDHCCu\" target=\"_blank\" rel=\"noopener noreferrer\">Professional C++, 5th Edition<\/a>.<\/p>\n<p>The event is <strong><span style=\"color: #ff0000;\">free<\/span><\/strong> for everyone, but you need to <strong><a href=\"https:\/\/becpp-januari-2023.eventbrite.com\/\">register for it<\/a><\/strong>.<\/p>\n<p>There are 75 seats available for this event.<\/p>\n<p style=\"text-align: center; background-color: #ffff99; padding: 5px; margin: 10px;\"><em><span style=\"color: #000000;\"><strong>Note:<\/strong><\/span><strong><span style=\"color: #ff0000;\"> The deadline for registrations is January 13th, 2023!<\/span><\/strong><\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;m happy to announce that the next meeting of the Belgian C++ Users Group is planned for Tuesday January 17th, 2023 at 18:00 at Medicim \/ Envista. Medicim \/ Envista ( https:\/\/www2.medicim.com\/ ) is sponsoring this event by providing the location, drinks and catering. The agenda is as follows: 18:00: Reception with food. 18:30: Session [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"pgc_sgb_lightbox_settings":"","footnotes":""},"categories":[9],"tags":[60],"class_list":["post-2019","post","type-post","status-publish","format-standard","hentry","category-events","tag-c20"],"_links":{"self":[{"href":"https:\/\/becpp.org\/blog\/wp-json\/wp\/v2\/posts\/2019","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/becpp.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/becpp.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/becpp.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/becpp.org\/blog\/wp-json\/wp\/v2\/comments?post=2019"}],"version-history":[{"count":14,"href":"https:\/\/becpp.org\/blog\/wp-json\/wp\/v2\/posts\/2019\/revisions"}],"predecessor-version":[{"id":2040,"href":"https:\/\/becpp.org\/blog\/wp-json\/wp\/v2\/posts\/2019\/revisions\/2040"}],"wp:attachment":[{"href":"https:\/\/becpp.org\/blog\/wp-json\/wp\/v2\/media?parent=2019"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/becpp.org\/blog\/wp-json\/wp\/v2\/categories?post=2019"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/becpp.org\/blog\/wp-json\/wp\/v2\/tags?post=2019"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}