Objective reasons to dislike C++?

Currently learning C++ because a couple of frameworks I need for a project are written in it.

I got a couple of books ('Tour of C++' and 'Effective Modern C++') to start getting up to speed.

Was wondering, for those of you that dislike the language, what are you reasons for disliking it? What are the greatest weaknesses? What are your experiences.

Attached: what_this.jpg (2350x3900, 891K)

Other urls found in this thread:

hboehm.info/gc/
libcello.org/
twitter.com/NSFWRedditImage

Not knowing the libraries off the top of my head, having to look up what does what and get mad when something very specific from another language library isn't in the C++ standard.

Generally, C++ is really just an extended version of C, and nothing prevents you from just using like an improved C with a few C++ features here and there.

IMO the main issue with C++ is the complexity of it. In C you could make a struct for some data that is grouped together. What about C++? Struct? std::pair? std::tuple or a class? Something else maybe?

It's hard, complicated, lacks modern features

So lots of options for achieving the same goal. I guess that would require learning the tradeoffs of each option, which is a lot of extra studying. Fair enough.

>It's hard, complicated, lacks modern features
What do you find hard and complicated about it?

Could you give some examples of modern features that you wish C++ had?

just libraries, automatic garbage collection, etc, things that would kinda defeat the point of the language really
i mean, it's not bad, it has it's place but it's not good to learn it or practice it because it's rare to actually need it anywhere.

>automatic garbage collection

With smart pointers and move semantics there really isn't a need for GC

>automatic garbage collection
You can link against a garbage collector and either redefine the new operator or make your own malloc-like function.
hboehm.info/gc/
Also as another user said if it's not ultra performance critical the reference counting smart pointers in the standard library should be sufficient.

Header files and their consequences.
The fact that they started as a superset of C instead just making it syntactically superficially similar which worked for other languages as well.
Several features being half-assed.
Tons of metaprogramming features with more to come like metaclasses that combined together STILL ARE NOT AS POWERFUL as a proper macro system and also lead to way worse error messages.
The standard library being shitty here and there.

I can think of plenty of companies that use C++:
microsoft, cisco, mathworks, valve, mozilla, etc...