I’ve seen this play out a lot. People say they “write games in C” and then quietly rebuild half of C++ anyway with vtables in structs or giant switch statements, just without the compiler helping. That’s fine if it makes you happier, but it’s not obviously simpler or safer. Also, C++ compile times are mostly a self-inflicted wound via templates and metaprogramming, not some inherent tax you pay for having virtual functions.
A switch statement is how you do ad-hoc polymorphism in C -- i dont thinks an own against C developers to point that out. If they wanted to adopt the C++ style that immediately requires the entire machinery of OOP, which is an incredibly heavy price to avoid a few switch statements in the tiny number of places ad-hoc poly is actually needed
You don't usually do C++ subsets if you want the full shebang.
I have a "mini-std" headerfile that's about 500 LoC implementing lightweight variants of std::vector, std::function, a stack-local std::function (unsafe as hell and useful as hell to avoid allocations), a shared-ptr, qsort and some other nifty stuff.
That does a lot of things, but even then I use other patterns that brings a lot of bang for the buck without having to go full C (hint: the stack-local function equivalent gets a lot of mileage).
This reads like an LLM generated response that simply restates the comment it's replying to
Heck the LLM accusations get a bit out of hand lately here on HN. I could delve into it now ... but I want to safe our time.
I think it is simpler and "the compiler not helping" == "things are more transparent".
There are various things one does not have to worry about when using C instead of C++. But the brain needs some time to get used to it.I think I get what you're trying to say, but you may have picked a bad example, here:
Yes, but this is more a theoretical problems while references are common in C++.
It's important that you do these things yourself before you utilise the compiler to do them for you, so you have real understanding.
> but it’s not obviously simpler or safer
On top of likely having worse performance.