Remix.run Logo
nightowl_games 15 hours ago

Kinda.

The vast majority of c++ I encounter is simple orthodox c++.

No one I know cares about new features in c++ and bemoans having to ever write a template.

No one really cares about bulletproofing types, ie: copy/move constructors and all that stuff.

I'm sure it's different at big companies but the vast vast majority of c++ is just simple procedural code.

8fingerlouie 8 hours ago | parent [-]

> the vast vast majority of c++ is just simple procedural code.

Probably because where C++ is needlessly complex, C is beautifully simple.

I've used both C and C++ in my career, spending 10+ years as a C programmer (kernels, applications and embedded stuff), as well as 4-5 years as a C++ programmer in a financial institution.

I find the thing most "new C/C++ programmers" complain about is memory management and type safety, but honestly, once you have a few years worth of experience, memory management is almost second nature. Most of the time i write the free() statement at the same time as i write the malloc() statement (if applicable).

weebull 4 hours ago | parent [-]

One of the things I loved about Python when I learnt it was how it dealt with `public`\`private`\protected``. It was "we're all responsible adults. No need to hide anything. We'll just use a naming convention for members that we don't expect people to directly use."

"Enforce encapsulation" suddenly became. "Respect encapsulation" in my head and a bunch of Java/C++ problems evaporated.

kstrauser 3 minutes ago | parent [-]

I do love that about Python. The encapsulation is there but you can work around it if you’re willing to take responsibility for breaking the gentlemen’s agreement. That’s a lovely pattern.