3 ms·
In my opinion there are two C++'s: 1) the version used by people writing things like the STL/Boost 2) the version used by people writing apps. A huge amount
by secondcoming 3y ago
In my opinion there are two C++'s:
1) the version used by people writing things like the STL/Boost
2) the version used by people writing apps.
A huge amount of the updates to the language are to make the lives of people in category 1 easier.
The people who fall into category 2 really don't need to use all the template headachery that the language allows. They can if they want, but they probably don't have to.
I've noticed that the Boost people are now deprecating old versions of C++. I look forward to hopefully quicker build times. To be fair, the Boost codebase is a masterpiece of working around decades of C++ versions and compiler bugs/missing features. Obviously that makes the code largely incomprehensible to newcomers.
- a1o 3y agoTemplates are amazing at helping to extract performance from things by moving run time decisions to compile time when done well. I usually only go there when the profiler points me somewhere is either acting as a bottleneck or something requires to perform better. You can then even decide to go even further through branching to cases you can go into SIMD intrinsics.