I remember when I was in school about ten years ago everyone was memeing it up as the choice of the professionals, especially for gamedevs.
Since then I've heard a lot of shit has changed and C++ is no longer as essential. Has it become basically obsolete or is it still marketable and widely used?
the funny thing is i was going to make a thread about this as well. i currently know java, javascript, and python, but I just dont see a point in learning c++. can any user show me an example of its relevance?
Asher Bailey
General software development.
I know it was widely used when performance was a big concern which is why gamedevs liked it but knowing what I know now about the gamedev industry I don't really wanna slave away doing that as a career. Is it still used widely for anything else nowadays?
Bentley Scott
I'd just like to interject for a moment. What you’re referring to as C++, is in fact, C/C++, or as I’ve recently taken to calling it, C plus C++. C++ is not a language unto itself, but rather a superset of a fully functioning C system made useful by the C standard libraries, idioms and compilers comprising a full programming language as defined by Jow Forums. Many developers program in a modified version of the C programming language every day, without realizing it. Through a peculiar turn of events, the version of C which is widely used today is often called “C++”, and many of its users are not aware that it is basically the C programming language, developed by Bell Labs. There really is a C++, and these people are using it, but it is just a part of the system they use. C++ is the abstractions: the layer in the language that allocates the machine’s resources through higher-level syntax. Abstractions are an essential part of a programming language, but useless by themselves; they can only function in the context of a complete programming language. C++ is normally used in combination with the C programming language: the whole system is basically C with C++ added, or C/C++. All the so-called “C++” dialects are really extensions of C/C++.
Jordan Hernandez
Only occasionally. Not in bread-and-butter database-driven enterprise projects.
>can any user show me an example of its relevance? Every relevant authoring software for content.
Jason Ross
...Or the software would just be built with Java.
Grayson Cooper
>Since then I've heard a lot of shit has changed and C++ is no longer as essential. Has it become basically obsolete or is it still marketable and widely used?
C++ undergoes constant development so new functionality is continually added. You should learn it if you think you'll use it in the industry, otherwise stick to python. If you have to pick one, I'd say more people use python than C++ in the wild, so learn that.
Adam Sullivan
If it was possible, it was done.
Ryan Watson
I already know Python pretty well. It was actually the first language I ever learned.
Since then I've been doing a lot of Java and have started to learn C so C++ kinda makes sense as a next step but if it's not widely used anymore then I won't waste my time.
Ethan Gomez
It depends on the industry, its not as widely used in 'general' as python is, but its still very prevalent in many places. If you are learning C then you should learn C++ as well. Being able to write C, C++ and python on your CV should make you way more employable.
Plus C++ can be used for fun dev stuff other languages generally suck at (embedded, 3d/graphics, etc)
John Foster
It's still worth learning.
Christian Kelly
nice pasta
Connor Myers
Thanks, made it myself. With some modification from Stallman copypasta.
Luis Hughes
I like C++. I use it in my job as a physics PhD student. I hope to get good enough to be a professional dev when I graduate.
Angel White
>physics PhD student >be a professional dev when I graduate Why did you waste all that time, effort and money? Why not just go for CompSci from the beginning?
Grayson Wright
different guy here. Because contributing to the scientific understanding of reality is an interesting and arguably valuable input to humanity while comp sci's usually go onto do some worthless ratrace busiwork for a manager/corporation who's just trying to spin up more bucks before they die from stomach ulcers.
Henry Gonzalez
That user wants to become a professional dev (aka code monkey), not a physicist.
Isaac Martinez
>Because contributing to the scientific understanding of reality is an interesting and arguably valuable input to humanity Making video games for a living doesn't do any of that though
Ryder Walker
A lot physics PhD end up banks,quants,risk analyst,medical machines,nuclear plants.
But begin game developer is just one waste, learn compute graphics, you had background to build game engine, new render technical.
C++ is the only one you should learn. Everything else is a meme.
Carter Long
C++ gets used in legacy Windows app and large *nix codebases for megabanks and megacorps. Microsoft has been shitting all over the faces of their C++ users for ages and are still surprised when they choose to go Java or full stack rather than their .NET bullshit. Megabanks like JPM hate their C++ codebase but are married to it since they spent a gorrilion dollars and over a decade building the stuff. Apple and Google laugh in the general direction of C++ because they can strongarm devs into using whatever proprietary language they crap out.
C++ is still a good language but no longer a go to for modern software development due to lack of framework and vendor support. Microsoft only lets you use their "managed" Cancer++ language modifications to use any remotely modern APIs. It would be nice if the language had modern, supported ORM and certain other things modern platforms have.
As a language, it ends up being too powerful for its toolset. It's easy to write multimillion line code only to get stuck in painful, tedious refactoring when design guesses are wrong or requirements change. The lack of any kind of major, automated refactoring tools has made trying to wrangle codebases suck. The new features being added are nice, but still not enough to take the edge off of cleaning up legacy shit.
C++ and other C-like code is used heavily in embedded environments where 5kb memory may be a gross luxury, or where performance is critical, like network software, game engines, parallel cloud computing providers, and automated trading.
The first part of is generally true, but when that power is needed, alternatives won't do.
In this sense, C++ is what you're left with after eliminating other options due to your constraints, not where you begin.
Levi Cook
How cute! A MP3 player for cocks!
Zachary Sanders
at that level of embedded, C++ is out. ANSI C is used instead
Dominic Bennett
I know you're right, but if they're a beginner, I think it's fair to conflate the two, because many of the skills translate. I've personally found that when teaching microcontroller stuff, c++ knowledge usually will translate well enough to c that if you say "You don't get to use the c++ standard library", and provide them a brief lesson about c-strings, malloc and free, and structs and unions, they usually do okay.
Dominic Walker
Yes, it's still relevant. C/C++ uses much low level shit that other languages abstract for you. If you really want to get into the knitty gritty of the OS, C/C++ & assembly is there. Yes it is still relevant and good to learn.