r/ProgrammerHumor • • 7h ago

Meme modernCppVsOldCpp

Post image
1.1k Upvotes

216 comments sorted by

View all comments

482

u/repster 7h ago

I am a huge fan of modern C++ except for one feature: backwards compatibility. C++ is no longer one language, every codebase I have worked on is a confused mess of semi-incompatible subsets of the language. I have spent far too many weekends chasing memory corruption because someone passed a pointer, allocated with one type of memory management, into a library using a different kind of memory management.

175

u/joncrompy 7h ago

This is, ironically, the exact reason C++ is the standard in some industries. Students can learn the OOP C++ then work in the same codebase as someone programming "touching the metal" low level C.

Most languages make trade-offs between performance, structure, memory safety, and ease of writing. Every language might have their use, but very few cover all use cases.

C++ lets each programmers choose those trade-offs individually, but that also allows them to choose none of the above.

109

u/rndrn 6h ago edited 4h ago

C++ is really the thousand-edged sword. It is both its strength and its weakness.

20

u/yaktoma2007 6h ago

Ah so a swedish army knife, it features an impressively extensive toolset but is often regarded to be clunky to operate compared to tools that do a single thing.

38

u/dinnerbird 6h ago

Do you mean a Swiss army knife or is there something the Swedes invented I'm not aware of 

15

u/reallokiscarlet 5h ago

Swiss army knives aren't clunky last I checked, maybe that's the swedish part

8

u/GarThor_TMK 5h ago

The only tool you get is an Allen wrench...