C++17 In Detail

Hi there!

My name is Bartek, I'm a programmer from Cracow/Poland. This is my blog about C++ and native coding.

Quick jump links:

27 May 2019

Heterogeneous Lookup in Ordered Containers, C++14 Feature

heterogeneous lookup in ordered containers, C++14

If you have a map of strings, like std::map<std::string, int> m; and you want to find some element by m.find("abc"). Do you have to pay the price and construct a std::string object? Can you optimize it?

Let’s have a look at one feature enabled in C++14 that might help optimize such container access.

20 May 2019

[Tip] How to Reference the C++ Standard or a Proposal

Reference the C++ Standard

You’re writing a document about C++, one feature or some cool programming technique. At one point you think that you have to prove that something works and that’s why you need to quote text from the Standard. How to do it?

18 May 2019

C++ Links #29 - recommended resources about coroutines

Welcome to new C++ Links - most important and useful articles, podcasts and videos that happen between 11th and 17th of May 2019.

In this week you will find links for two interesting resources: one about coroutines and the second about modern C++. You will also find a link describing what is the point of declaration, how to use constexpr for investigating errors and many more!

11 May 2019

C++ Links #28 - No more erase-remove idiom!

Welcome to new C++ Links - most important and useful articles, podcasts and videos that happen between 4th and 10th of May 2019.

Today you will find a link to a video that shows how Uniform Container Erasure will simplify erasing elements from containers, link to an introduction to modules, and tutorial how to change boost::filesystem to std::filesystem.

06 May 2019

Converting from Boost to std::filesystem

Converting Boost to std::filesystem

As you may know std::filesystem evolved directly from Boost filesystem library. For a long time, it was available as a Technical Specification and later merged into C++17. Developers who used Boost can ask themselves what the differences between the two libs are. Can the code be easily converted to use std::filesystem? Today’s article is written by Scott Furry who writes about the differences he found when working with the two libs.

04 May 2019

C++ Links #27 - ADL, compiler optimisations, though C++ Quiz

Welcome to new C++ Links - most important and useful articles, podcasts and videos that happen between 27th of April 3rd of May 2019.

In this week you will find a little bit of C++ history - how namespaces were introduced in C++ and what design choices they have. You will also find a link to an extremely hard C++ quiz!

29 April 2019

Improving Print Logging with Line Pos Info & Modern C++

Line Pos Debugging C++

No matter how proficient you are, I think, you might still use one of the primary methods of debugging: trace values using printf, TRACE, outputDebugString, etc… and then scan the output while debugging.

Adding information about the line number and the file where the log message comes from is a very efficient method that might save you a lot of time. In this post, I’ll describe one trick that is especially useful in Visual Studio but might also help in other IDE/compilers.

I’ll also show you how modern C++ and C++20 make code nicer.

22 April 2019

Overview of std::filesystem, my talk

C++17 String Operations

Last Tuesday, 16th April, I had a pleasure to talk about std::filesystem in our Cracow C++ User Group.

Here are the slides and additional comments.

15 April 2019

How to Iterate Through Directories in C++

How To Iterate Directory in C++

How would you implement a function that searches for files with a given extension? For example, finding all text files? or *.cpp files? To code that solution you need a way to iterate through directories. Is that possible in C++ out of the box using the standard library? Let’s see some techniques and new elements that C++17 added.

13 April 2019

C++ Links #26 - co_awaiting coroutines and new boost libraries

Welcome to new C++ Links - most important and useful articles, podcasts and videos that happen between 6th and 12th of April 2019.

In this week you will find the link to post about co_awaiting coroutines, link to an article how to write spaceship operator with std::tuple & CRTP pattern and many more!

06 April 2019

C++ Links #25 - 75 articles in two months & understanding modules!

Welcome to new C++ Links - most important and useful articles, podcasts and videos that happen between 30th of March and 5th of April 2019.

01 April 2019

C++ April Fool's Quiz

C++ Quiz

It’s April Fool’s Day, so let’s have some fun :) Last year I announced fake news about C++: deprecation of Raw Pointers and two years ago I wanted to have C++18. So what’s coming this time?

A quiz!

Answer the questions, and find two that makes no sense and don’t have any correct answer… can you solve such test?

30 March 2019

C++ Links #24 -static vs dynamic libraries, ADL & BooSTL!

Welcome to new C++ Links - most important and useful articles, podcasts and videos that happen between 23th and 29th of March 2019.

This week you will find links to a detailed comparison of using static vs dynamic libraries, how we can discover code smell using static analyser and many more!

25 March 2019

C++ Lambda Story - A Free Ebook

C++ Lambda Story

Lambdas are one of the most prominent and useful elements of modern C++. They can significantly reduce the code and make it more expressive. The feature might look easy, but there are a lot of details that you need to know to master it. This free ebook will help you with that!

© 2017, Bartlomiej Filipek, Blogger platform
Disclaimer: Any opinions expressed herein are in no way representative of those of my employers. All data and information provided on this site is for informational purposes only. I try to write complete and accurate articles, but the web-site will not be liable for any errors, omissions, or delays in this information or any losses, injuries, or damages arising from its display or use.
This site contains ads or referral links, which provide me with a commission. Thank you for your understanding.