New new() - The C++17's Alignment Parameter for Operator new()
Last week’s article about smaller C++17 features mentioned updated operator new() that handles non-standard alignment of objects. How does it work? Can you use it to ask for arbitrary alignments? Let’s...
View ArticleC++ Links #34 - new new(), bind_front, SFINAE & AWS
Welcome to new C++ Links - most relevant and useful articles, podcasts and videos that happen between 16th and 24th August 2019.Today you will find links new operator new, bind_front implementation,...
View ArticleC++ Links #35 Myths about C++ good practices, raw string literals
Welcome to new C++ Links - most relevant and useful articles, podcasts and videos that happen between 31st August and 6th September 2019.Today you will find links to a video about raw string literals,...
View ArticleC++ Links #36 - How to start with modern C++, Concepts & Books!
Welcome to new C++ Links - most relevant and useful articles, podcasts and videos that happen between 6st and 13th September 2019.Today you will find links to an article about how to implement...
View ArticleC++17 In Detail - Print Version!
Last week was an important milestone for my book: it got a print version available at Amazon! In this post, I’ll share some details behind the event and the plans.Read more...
View ArticleHow To Use Vocabulary Types from C++17, Presentation
Two weeks ago, I had a pleasure to give a talk at our local C++ User Group in Cracow. This time I spoke about vocabulary types from C++17: std::optional, std::variant and std::any.Have a look at the...
View ArticleC++ Ecosystem: Compilers, IDEs, Tools, Testing and More
To write a professional C++ application, you not only need a basic text editor and a compiler. You require some more tooling. In this blog post, you’ll see a broad list of tools that make C++...
View ArticleC++ Tricks: IIFE for Complex Variable Initialization
What do you do when the code for a variable initialization is complicated? Do you move it to another method or write inside the current scope?In this blog post, I’d like to present a trick that allows...
View ArticleLazy Initialisation in C++
Lazy initialization is one of those design patterns which is in use in almost all programming languages. Its goal is to move the object’s construction forward in time. It’s especially handy when the...
View Article#C++ Links #37 - The case for C++ and Big Four of C++20
Welcome to new C++ Links - most relevant and useful articles, podcasts and videos that happen between 25th October and 1st November 2019.Today you will find links to articles about refactoring, the...
View ArticleFive Awesome C++ Papers for the Belfast ISO Meeting and C++20 Status
Following the pattern for other ISO C++ Meetings, I prepared a blog post where you’ll learn about:The current status of C++20an overview about the Belfast meeting (4th till 9th Nov)a few interesting...
View ArticleLazy initialisation in C++ and Multi-threading
In the previous post about lazy initialisation, we showed examples and differences between using raw pointers, unique_ptr and std::optional to store the object and create it later. However, we...
View ArticleA Programmer’s Guide to Performance Analysis & Tuning on Modern CPUs
They say “performance is king’… It was true a decade ago and it certainly is now. With more and more data the world generates each day, we need more and more computing power to process it. It used to...
View ArticleHow to Convert Numbers into Text with std::to_char in C++17
In this post, I’ll show you how to use the newest, low-level, conversion routines form C++17. With the new functionality, you can quickly transform numbers into text and have super performance compared...
View ArticleThreading in C++17: Loopers & Dispatchers
Multithreading is a tough nut in software development. Not just because there are dozens of ways to approach a single problem, but also since one can get so many things wrong.In this article, I want to...
View ArticleHow C++17 Benefits from the Boost Libraries
In today’s article, I’ll show you battle-tested features from the well-known Boost libraries that were adapted into C++17.With the growing number of elements in the Standard Library, supported by...
View ArticleC++ at the End of 2019, Survey
It’s almost the end of the year!I prepared a quick survey, so we can learn about our experience with the language.Read more...
View ArticleC++ at the end of 2019
2019 is almost over. Let’s reflect on how C++ changed during this time! What were some significant events, how the Standard progressed, how tools changed and many more.Let’s have a look!Read more...
View ArticleA Gentle Intro to Developing C++ Apps for AWS and S3
Amazon Web Services (AWS) provide multiple tools for developing a native cloud application. In particular, the Software Development Kit (SDK) for C++ programming language enables developers to build...
View Article2 Lines Of Code and 3 C++17 Features - The overload Pattern
While I was doing research for my book and blog posts about C++17 several times I stumbled upon this pattern for visitation of std::variant:template<class... Ts> struct overload : Ts... { using...
View Article