How far does c++ go?

I have been studying c++ with the intent of going all the way and lately I have been starting to get a grasp on inheritance, polymorphism, and now learning about stack and recursion and thought I was nearing getting at least a decent foundation...but to my surprise, the above mentioned things are basic skills [according to a few people on youtube]. So how much more is there to learn I guess is my question. Is c++ a lifestyle because it seems endless.
Sounds like a lot of what you've been learning is some basic programming concepts. Which are definitely good to learn. C++ merely implements these concepts.

All that aside, C++ has some things that makes it unique among the more "modern" OOP languages. The core set of features that C++ offers is relatively easy to pick up compared to some other languages, but it's still pretty vast. You can find someone who's been programming in primarily C++ for 10 years, and he/she will still find new things they didn't know.

When I was first starting to think I was getting to know a good amount of the language, I ran into this same feeling you're having. You spend a good amount of time figuring things out and you think you know stuff, only to realize that this a still a ton out there to learn. Just keep at it and know that programming is a skill like any other. The more you practice, the better you'll get.
Yeah it does seem pretty vast. I thought my book covered c++ in its entirety but I guess there is much more. As the concepts I mentioned are just basic programming concepts that span different languages, could you maybe name 1 or 2 proprietary c++ concepts. And I noticed you said "modern" oop languages...is there a chance c++ might get taken out by one of these modern languages? Will definitely keep at it.
could you maybe name 1 or 2 proprietary c++ concepts


C++ isn't a proprietary language. But there's lists of features (big and small) that it has that the other popular languages don't have. Keep in mind, not all the features are necessarily a good thing.

is there a chance c++ might get taken out by one of these modern languages?


Eh it's doubtful. People still program in FORTRAN and Cobol, and C. C++ has it's place that I don't see getting filled by a different language. At least not anytime soon.
You and D. I'm surprised you don't have high hopes for LOLCODE.
http://en.wikipedia.org/wiki/LOLCODE
LOLCODE? how ancient is it? any LOLCODE designed in the last 38 minutes should be spelled LAWLCODE, or at least LULCODE, LOL is so 39 minutes ago.

D actually looks quite interesting.
Last edited on
closed account (4SyAqMoL)
I gotta be careful to not get overwhelmed by C++!
closed account (1yR4jE8b)
I think Go has a better chance of taking over than D.
Why's that? D looked liked quite a good programming language, what's wrong with it?
Go has a big flashy cheerleader.
Why's that? D looked liked quite a good programming language, what's wrong with it?

Someone once said it doesn't have an industry-ready toolchain yet. Last time I checked, the compiler can't warn for unused variables. For other things, ask rapidcoder.

So far I've used D to solve thirty Project Euler problems, and I have found it's a very capable language, especially compared to C++. And compared to Python or Haskell, however, D naturally tends to be more verbose.
Haskell is king where syntactic sugar is concerned, and in terms of performance sometimes it can beat C because it can perform optimisations that a C compiler can't, due to the language (edit: that is, Haskell) not allowing side-effects (unless they're wrapped up in a monad). The only "problem" is that it's hard to learn.
Last edited on
How far does c++ go?


Bang zip zoom, straight to the moon

Why's that? D looked liked quite a good programming language, what's wrong with it?


It offers too little that can't be done with other languages to justify switching. It is not only the toolchain. It brings some nicer syntax and modern features, but other languages have them too. But libraries for D are a 1/100 of libraries available for C++ or Java. And the compiler produces usually slower programs than Java... And it can't load classes dynamically, so creating pluggable applications (very heavily used in enterprise) is a PITA... Therefore it is not attractive to Java folks, but it is also not that attractive to C++ folks (D brings C++ halfway to Java, e.g. promotes usage of GC).


is there a chance c++ might get taken out by one of these modern languages?


Depends on the application class.

For most business application programming it was completely overtaken by Java and C#. For big data processing and core databases stuff it is being overtaken by Java right now. The same for mobile apps (Java together with Objective C). And for operating systems nor web development it never really gained any real popularity. What is left? Games and desktop apps mostly.
Last edited on
And the compiler produces usually slower programs than Java...

Sample code, newest compilers, benchmarked, please.
It was on great language shootout, but they removed it for some unknown reason (when I last checked it was slower than Java). Anyway, how is their GC? Can D handle a 2 GB heap on a 32-bit system? Can it defragment the heap? Can it collect concurrently / in parallel without stopping the program in order to keep small pauses? Can it use generations? If the answer is "no" for these questions, it is not production ready, yet.
Last edited on
Topic archived. No new replies allowed.