3 ms·
What a weird analogy. The truth is that you can't explore a C++ codebase without actually stepping through it with the debugger. You literally can't see all th
by jstimpfle 4y ago
What a weird analogy.
The truth is that you can't explore a C++ codebase without actually stepping through it with the debugger. You literally can't see all the places where you end up. A mechanism to do the type resolution is needed, and that is a much, much bigger mental load.
In C you can see each and every jump by default (unless someone does terrible hidden macro magic etc). Maybe add a code browser for convenience. You can often get a pretty good idea of a codebase just by browsing it. These are definitely diferent qualities.
What's to say for C++, it's harder to misuse libraries because you don't have to understand libraries as well, and some constraints to using them are better enforced, because of RAII and other mechanisms. But as Stroustroup said himself, "C++ makes it harder, but when you do it blows your whole leg off". It's far from impossible to misuse C++, and when you do, it can be much harder to find out what's wrong.
Anecdotally, in C++ it's also much easier to build a castle that ends up being a labyrinth.