I'm trying to follow proposals for new C++ standards. There is a lot of documents informing C++ enthusiasts about features which will make our code cleaner, more comprehensible, but sometimes we can see propositions of improvements which will let us to resign from external libraries in favour of standard ...
In 2017 a new standard of C++ language has been released. Unlike C++14, C++17 has introduced a lot of new features. C++14 was rather a supplement for C++11 (ok, it has introduced some completely new features, but most were improvements of what we had known from C++11). C++17 brought a lot of new possibilities.
In this post I'm going to tell you about new things in C++17 which I like the most, because I found them useful in my newest projects.
Modern tools provided with C++11's standard library make fight with memory leaks and errors easier and more effective. Sometimes problems which are seemingly not dangerous might put an end to your application. We are going to learn how to find and avoid them.
In the latest part of Programming modular applications in C++ I have shown you some practical examples of modular applications. These applications probably work well with your dedicated plugins. Problems begin when you try to mix in plugins written by your users which have been compiled using different compilers (it might work) or even operating systems (it cannot work!).
In the Introduction to programming modular applications in C++ I described some simple examples. In this part I'm going to show you more sophisticated applications which also will use modules. Examples from this part will be object oriented and will present more professional approach to programming modular applications.
In this part I'll show you two examples. First would be a solution of task which I gave you at the end of last article. You were asked to write a calculator which can add numbers, subtract them and load modules with other operations. The second example I'm going to write for you will be simplified system shell (so-called command line).
Nowadays nearly every application can be extended with many different types of add-ons or plugins. Thanks to them we can write new functions to our favourite applications without rebuilding them each time we want to extend or modify it. I'm going to tell you how to write modular application in C++.