Having encountered a similar proliferation of config in "enterprise" C++ (where it's usually not implemented in terms of serialisation) it was mostly driven by a need to modify the behaviour of systems in production without having to go through software release processes that were often cumbersome and beaurocratic.
Also many are unaware that Java EE was born as a Objective-C framework for OpenSTEP, Distributed Objects Everywhere, which was then ported to Java.
https://en.wikipedia.org/wiki/Distributed_Objects_Everywhere
Which was anyway mostly inspired by Objective-C way, not C++.
Additionally by going through NeXT manuals, or the Brad Cox book, I don't get where the author came to the idea everyone should be doing C.
Heck even the device drivers had a framework.
(Source: joined the Cocoa team in 2005.)