In this post you will know what is the future of C++ in 2019 and upcoming features of C++ in 2019. Some programmers don’t like the direction that the language is heading but I would argue that with great power comes great responsibility(simply put, the language has no limitations — even templates are Turing Complete). Moreover, the language has evolved and changed a lot but it wasn’t up to C++11 (auto, move semantics, lambdas and many more were introduced) where the good staff started to happen! 7 years later C++ is growing rapidly with many exciting and promising upcoming features.
Some of the upcoming features:
- Ranges (unfortunately they didnt make it in C++2a but they will stick around). Finally, correct by construction queries.
- Concepts — a very long awaited feature(C++2a will only introduce concepts light). A concept is a type requirement for a template — a very powerful feature that also allows the compiler to generate proper error messages for templates (opposed to what you would get before — 100 lines of complicated STL template instantiation error messages)
- Network library(rejected for C++2a will be on the standard after)
- Modules! (C++2a). Not much to say, finally the replacement of headers and will decrease the compile times.
- Promise (I am not sure if it made it in the C++2a). Function pre and post condition requirements.
- Executors. (C++2a). Yes, the world now runs in parallel. Execution policy is important
- Graphics (is in the talks and I personally am highly against it)
- Two modern features that I really like:
- Compile time if — C++17. Although I would like to see a static compile time if which unfortunately was rejected. I list this feature cause you can do magic ;)
- Fold expressions — An operation applied to a pack of variables (with any type).
No comments:
Post a Comment