CppNews #37: [10.09 - 16.09.2018]
Jak co tydzień zapraszamy na nową porcję newsów - linki do najważniejszych artykułów, postów, filmików i słuchowisk. Dzisiaj znajdziecie między innymi link do filmiku, wyjaśniającego różnice pomiędzy const, constexpr i static, post o najbardziej przyjaznych funkcjach języka oraz artykuł opisujący problemy ze SFINAE. Zapraszamy!
CppNews #37: [10.09 - 16.09.2018]
Wpis od Jonathana Muellera, kolejny wpis z serii traktujący o porównywaniu obiektów, a właściwie o jego matematycznej stronie. Tym razem autor analizuje ficzer z C++20, tzw “spaceship operator <=>”:
https://foonathan.net/three-way-comparison.htmlNowy filmik z C++ Weekly od Jasona Turnera, pokazuje jak lambda może być użyta w połączeniu z fold expressions:
https://youtube.com/watch?v=QhY7Fx-YsGsDługo artykuł od Arthur O’Dwyera - rozważa, jakie problemy mogą wystąpić z type traits i SFINAE. Zaczyna od prostego przypadku: generyczna metoda zamieniająca obiekt na std::string przy użyciu operatora “<<” i std::stringsteam, a kończy na sporej ilości kodu obsługującej nietypowe przypadki:
https://github.com/Quuxplusone/blog/blob/master/_posts/2018-09-08-problems-concepts-should-solve.mdKolejny post od Rainera Grimma o C++ Core Guideliness, tym razem Rainer omawia paragrafy związane z type erasure (jeśli nie wiesz co to jest - w poście jest to dokładnie opisane):
http://modernescpp.com/c-core-guidelines-type-erasureNowy odcinek słuchowiska CppCast - wywiad z Andersem Schau Knattenem, twórcą strony CppQuiz.org, która zawiera mnóstwo pytań o zakamarkach C++. Moim ulubionym pytaniem, wspomnianym w słuchowisku, jest pytanie 127, pod różnymy kompilatorami dostajemy różne wyniki, a na oba kompilatory zgłoszone są bugi :) Warto wiedzieć, że wszystkie pytania zostały zaktualizowane by być zgodnymi z C++17!
http://cppcast.com/anders-knatten/Nowy filmik od ekipy z CopperSpice, wyjaśniający znaczenie słów kluczowych const, constexpr i static:
https://youtube.com/watch?v=Dpob2KsYLWsGościnny wpis na blogu Jonathana Boccary skupiający się w okół tego jak powinno się uczyć programowania w C++. Sporo przydatnych rad, między innymi lista rzeczy, na które powinno się zwracać uwagę sprawdzając uczniom kod:
https://fluentcpp.com/how-to-write-simple-code-to-accomplish-complex-tasks/Wpis od Arne Mertz na temat funkcji w języku, które wprawdzie nie wprowadzają nic nowego, ale są bardzo przydatne i oszczędzają pisania niepotrzebnego kodu:
https://arne-mertz.de/quality-of-life-features/Post od Jonathana Boccary - jak usuwać elementy z sekwencyjnych kontenerów. Brzmi prosto - ale Jonathan opisuje również wiele szczegółów, jak np. usuwanie duplikatów z kontenerów asocjacyjnych:
https://fluentcpp.com/how-to-remove-elements-from-a-sequence-container/Jeśli przegapiliście, na naszym blogu pojawił się artykuł od Bartłomieja Filipka - opisuje użycie std::visit z wieloma wariantami:
http://cpp-polska.pl/jak-uzywac-stdvisit-z-wieloma-wariantami
Na jego blogu możecie też znaleźć wersję w języku angielskim: https://bfilipek.com/visit-variants.html