Every year, the “Modern C++” term appears in many discussions. In general, the “Modern C++” term started with the release of the C++11standards. Since that time, the C++14, C++17, and C++20 standards followed. In the future C++23 is on the horizon already. Modern C++ consists of a lot of features of previous C++ standards too and, of course, those of the C Programming language from which C++ evolved. Maybe we should ask though, exactly what is modern C++ in 2023?
Table of Contents
What is Modern C++?
To most people, Modern C++ means the program code is written to take advantage of those later standards within the industry. The phrase “Modern C++” term is not a brand, specific standard or ‘kind ‘flavor’ of C++ but generally it means that the C++ code, compiler and linker, support at least the C++11 standards. C++11 is shorthand for C++ syntax and features that are based on and implement the C++ ISO/IEC 14882 standard. Some of new C++11 features are called ‘Modern’ and if a developer is developing application by using these compiler standards, then the source can be referred to as “Modern C++” or “Modern C++ source”. Note that C++11 marks the beginning of Modern C++ but much of the code you will see written today will use some of the great features of C++14, C++17, and C++20. C++23 is the next published standard which is set to replace C++20 as the ‘current’ standard in December 2023.
What is the current version of Modern C++?
At the time of writing (April 2023) the current Modern C++ standard is C++20 although C++23 is ‘feature complete’.
What is the difference between modern C++ code and Modern C++?
Personally, I think “modern C++” (with a lowercase m) is only modern if you are developing modern apps for today’s latest operating systems and their devices – but within the industry “Modern C++’ (uppercase M) specifically means the program code is written to take advantage of C++11 and later standards.
These standards listed above are not enough alone to develop modern apps. You need to be using the latest modern C++ compiler and IDE with C++ tools that use and support these standards. For example, the latest RAD Studio, C++ Builder 11.3 has a substantial collection of new features (including C++11, C++14, and C++17 features), but goes way beyond those syntactic standards and augments your programming toolbox with GUI features, Modern UI visuals with many skins, High-Res Bitmap Tools, 500+ free and 3rd party libraries and tools for different modern needs, database connectivity tools, REST tools to simplify and automate interactions with REST servers, deployment tools to get your apps into the app stores and user’s machines, and multi-OS Multi-Device support. The latest 11.3 release of RAD Studio is focused on quality and a broad range of improvements.
What is Modern C++ in 2023
On Windows, iOS and Android, C++ Builder 11.3 is packed with a load of great features. RAD Studio and C++ Builder 11.3 support the C++11, C++14 and C++17 standards with some excellent modern tools and libraries.
And the latest RAD Studio, C++ Builder 11.3 has a lot of quality fixes and improvements. Here is the full list of the latest available version now:
According to post by David Millington, the up-coming C++ Builder has some pretty amazing features; CLANG v15, will Support C++20 and a lot of C++23 features, Win64 primary OS, with Win32 (others may follow), new and updated code completion, integration of Visual Assist C++ navigation and refactoring, and a whole lot more. Please read the following post for more details:
Personally, I am very happy about to hear the latest features and future plans for C++ Builder.
At the time of writing the ISO C++23 standard is still evolving and any compilers wishing to ‘claim support for C++23’ is to be considered experimental. There is a large body of C++ code out ‘in the wild’ which uses features from the C++17 standard which has reached a mature and stable point.
Are there some examples of Modern C++?
Here are some few examples of modern C++, for more please check the https://learncplusplus.org web site which is stuffed full of examples to suit all levels of developer.
If you would like to know what is new in the latest RAD Studio 11.3 Alexandria here is an official webinar replay.
C++ Builder is the easiest and fastest C and C++ IDE for building simple or professional applications on the Windows, MacOS, iOS & Android operating systems. It is also easy for beginners to learn with its wide range of samples, tutorials, help files, and LSP support for code. RAD Studio’s C++ Builder version comes with the award-winning VCL framework for high-performance native Windows apps and the powerful FireMonkey (FMX) framework for cross-platform UIs.
There is a free C++ Builder Community Edition for students, beginners, and startups; it can be downloaded from here. For professional developers, there are Professional, Architect, or Enterprise version.
Disclaimer: All new features and improvements discussed in this blog post for future versions of RAD Studio are not committed until completed, and GA released.
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition