I’m happy to announce that last Friday I updated the book! “C++17 In Detail” grew by 31 pages (up to 250), includes two new chapters and lots of “bug” fixes and better explanations.
See what’s inside.
The Changes Here’s the short version of the release notes:
– New chapter - String Conversions
Welcome to new C++ Links - most important and useful articles, podcasts and videos that happen between 22th and 28th of September.
This week CppCon took place - the biggest C++ conference. In today’s list, you will find the first video from there, about future of C++, you can also see a post about removing duplicate elements from associative containers and an example of really defensive programming.
Welcome to new C++ Links - most important and useful articles, podcasts and videos that happen between 15th and 21st of September.
Today you will find a link to post about “same but different” objects in C++, a video showing what code compiler generates when you write a lambda, article about why you should always capture exception by const reference and many others.
As usually, C++ needs good books and up-to-date learning resources. In this review, I’d like to present a book that should significantly enhance your knowledge of Modern C++, including C++17.
Let’s see what’s inside.
Disclaimer: I asked the author and got a print copy for the review.
The book
Welcome to new C++ Links - most important and useful articles, podcasts and videos that happened between 8th and 14th of September. Today you will find a link to a post about the C++ quality of life features, a video with an explanation of the difference between const and constexpr, an article that describes some of SFINAE problems and many others.
std::visit is a powerful utility that allows you to call a function over a currently active type in std::variant. It does some magic to select the proper overload, and what’s more, it can support many variants at once.
Let’s have a look at a few examples of how to use this functionality.
I’d like to make an experiment on the blog and introduce a new simple series. Each Friday you’ll see a summary with valuable links and resources from the C++ World. The links and annotations are coming from a guest author - Wojciech Razik - one of the co-author of cpp-polska.pl.
I’m happy to announce that just a few days ago I updated the book! “C++17 In Detail” grew by 7 pages (up to 219), includes a few new examples, new feature descriptions and lots of “bug fixes”.
See what’s inside.
The Changes Here’s the short version of the release notes:
Searchers from C++17 are a new way to perform efficient pattern lookups. The new standard offers three searchers: default_searcher , boyer_moore_searcher and boyer_moore_horspool_searcher. The last two implements algorithms that require some additional preprocessing for the input pattern. Is there a chance to separate preprocessing time from the search time?
With C++17 you can now use more sophisticated algorithms for pattern searches! Now, you’ll have more control and a promising performance boost for many use cases.
Intro The naive approach of finding a pattern in a string is O(nm) (where n is the length of the whole string, m is the length of the pattern).
I’m happy to present my first ebook on C++!
Here’s the short story and the description of what you can find inside.
The Story At the beginning of 2017, I decided to make a super long, collaborative, post about all the new things that are coming with C++17. At that time we had quite “stable” drafts, so most of the new features were already known.
How do you initialise a string member in the constructor? By using const string&, string value and move, string_view or maybe something else?
Let’s have a look at possible options.
Intro Below there’s a simple class with one string member. We’d like to initialise it.
For example:
class UserName { std::string mName; public: UserName(const std::string& str) : mName(str) { } }; As you can see a constructor is taking const std::string& str.