this post was submitted on 08 Jun 2024
1040 points (98.5% liked)

Programmer Humor

18250 readers
1498 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] hark 88 points 3 weeks ago (12 children)

The graph goes up for me when I find my comfortable little subset of C++ but goes back down when I encounter other people's comfortable little subset of C++ or when I find/remember another footgun I didn't know/forgot about.

[–] [email protected] 34 points 3 weeks ago (5 children)

When I became a team leader at my last job, my first priority was making a list of parts of the language we must never use because of our high reliability requirement.

[–] [email protected] 11 points 3 weeks ago (1 children)

Care to share any favourites?

[–] [email protected] 27 points 3 weeks ago (2 children)

strtok is a worst offender that comes to mind. Global state. Pretty much just waiting to bite you in the ass and it did, multiple times.

[–] [email protected] 13 points 3 weeks ago* (last edited 2 weeks ago) (1 children)

Sure, strtok is a terrible misfeature, a relic of ancient times, but it's plainly the heritage of C, not C++ (just like e.g. strcpy). The C++ problems are things like braced initialization list having different meaning depending on the set of available constructors, or the significantly non-zero cost of various abstractions, caused by strange backward-compatible limitations of the standard/ABI definitions, or the distinctness of vector<bool> etc.

[–] [email protected] 4 points 3 weeks ago

No you are right! Honestly it was several years ago and I struggled to remember exactly what I came up with before I left.

In our application we for example never use dynamic memory allocation. It has to be done very carefully so we don’t crash. Problem is there’s lots of sneaky ways one can accidentally do it from the standard library.

[–] [email protected] 2 points 3 weeks ago

Faust bless those who added strtok_s to C11.

load more comments (3 replies)
load more comments (9 replies)