As they say, if you are starting a project to solve a problem, and choose C++ as a language, then you now have three problems: the original problem, the C++ language complexity, and the third is the maintenance hell afterwards.
C++ language development is a classic case of what feature creep looks like for a software project that is on the path to self-harm.