this post was submitted on 29 Dec 2024
345 points (98.9% liked)
Programmer Humor
19990 readers
1769 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
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I honestly don't know why they even have -> instead of just a dot like everyone else. The compiler knows whether it's a record, object, pointer, or any level of pointer to pointers.
Why make the programmer do the donkey work?
It's important for objects that can be dereferenced. Smart pointers have methods that can be accessed with dot syntax like
swap()
. You can still dereference through a smart pointer using arrow syntax to access methods on the referenced type since they overload theoperator->()
method.Operator overloading allows you to redefine what each operator does. It's essential to achieve a truly fucked up code base
I love the arrow in functional programming. Some functional languages (like reasonml) has multiple arrow operators that did different things like this one -> would put the argument in the first position (a popular JS pattern) and the big arrow |> would put it last like most functional languages.
I know this is about CPP but honestly I love the way it looks, but I'm a weirdo lol