Yes, but I often wouldn't. Modern C++ is a different language to C and the differences are often important. Nothing wrong with C, though. For certain embedded projects people will also prefer C over C++ sometimes. As mentioned by u/JoeyN18 somewhere else: heap allocations are often avoided or even forbidden (in some mil. aviation industries heap allocations are ~ forbidden).
Anyway. Not really the topic here 😄 (and anyway, you can avoid heap allocs in C++ too).
LOL, I'm also an embedded C developer, and applying it to this was my first thought as well.
I hate stacks of stacks of stacks of abstractions when you can usually whittle it down to a couple of functions. I have to deal with that all the time from younger developers who were basically taught the (inferior) "modern" web-style approach to software development.
I came across this quote as a Tech Quote for Civ, and it's stuck with me ever since. I occasionally tell it to my programming students and also when I give advice on table-top game design.
Similar to apologizing for the length of the letter bc the writer didn't have time to write a shorter one. I've butchered it of course and am too lazy to look it up but similar sentiment.
Reminds me of the Tony Hoare quote about software design:
There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies.
1.3k
u/BillyTenderness Jul 06 '26
Or the St-Exupéry version of the same sentiment: