That Pro C++ book does look intriguing, added to my Amazon wishlist.
Heh, I do understand about not willy-nilly changing existing code just because some new feature was added to C++, especially in a potentially HUUUUUUGE code base.
Being self-taught does make it easier to slap together some new feature change/upgrade, most of the code I've written and retained is not that huge, and changes would help to squish the new C++ features further into my cranium. I'm still learning what C++17 added/changed vs. C++11/14. C++20 is for me as radical a change as C++11 was.
For that matter even some C++11 changes are still relatively new to me, such as lambdas.
I may use lambdas, mostly because I copy'n'paste code I've found on the interwebs. Writing one from scratch is intimidating.
I have a handful of header-only files I use routinely, one of which I shamelessly adapted from an old C++ working paper, a simple toolkit to use
<random> instead of the C library functions.
http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3551.pdf
With a little time and effort I modularized most of my header-only files, though I probably didn't do it as neatly and cleanly as I could and should have done. With minimal testing the interface modules still work as I expect. Later I will examine what can be done to improve what I've already done.
Modularizing the random toolkit was a lot simpler than I thought it would be. Changing inline to export, while substituting module framework for header guards was about all I needed to do.
The MS documentation on modules I read before getting that C++20 book was, to put it politely, confusing to the max.