continue learning C++

Hello,

I'm sorry my question is kind of very general, but a good answer will be a great help. My major is physics and I have written codes in C++ mainly for my thesis and I really enjoy it.

My knowledge is basic and I know how to work with pointers and I' can work with vectors, arrays, functions and recursions...

Recently, I felt the need of learning the program more professionally and I started to learn object oriented part of a tutorial. But I found it a bit difficult.

As I asked people who write codes, they told me that it is better that I forget about C++ and start learning C#. Not an insult to anyone but, I am told that C++ is getting old.

Is that true?
Tutorials probably won't get you far as they're often written by beginners and tend to contain incorrect or misleading information. It's better to get a reputable book. And yes, C++ is aging, although it got its first major revision last year (C++11), introducing some features also found in more modern languages. Nevertheless, C# and C++ are quite similar, so learning one is not much of a problem when you've already dealed with the other.
It's probably better if you learn C# first to get away from the horrible "C with classes" (or even without classes, as seems to have been the case for you) they tend to sell as C++ in most schools and universities.
Last edited on
C# is a Microsoft proprietary language. If you're working in a MS shop, then fine. C# does have its advantages.

If you're working in a unix or mainframe shop, you won't find C# at all. In the shop where I work (a mix of mainframe, midrange, unix, and Windows), C#, is forbidden.
closed account (3TXyhbRD)
C++ may be aging, however if you know C++ you can learn any other programming language, and fast. If you get to work fast in C++, you'll be extremely fast in any other modern programming language.
closed account (zb0S216C)
C++ is going to be around for a long time. I can't see that sissy-fairy of a language, C#, replacing C++ any time soon. I tried it once - I felt insulted. After 10 minutes, I uninstalled the C# IDE. How anybody considers programming in C# an art is beyond me.

Here's a few things I don't like about C#:

- I don't like the fact that Main() has to be a member of a class.
- I don't like the fact that every library feature depends on the .NET Framework.
- I don't like the garbage collection system (I prefer to handle the memory myself).
- I don't like the fact how every program is compiled into the intermediate language.
- It isn't as flexible as C++.
- It's more or less replicating Java.
- It isn't challenging.
- I feel as though I'm not in control of my own code.

If C# had a voice, it'd say:

"Either make everything an object, or you can do one; Don't like how I decide when to free memory? Cry me a river, Timberlake; Don't like the .NET Framework? Too bad; it's Windows or fuck all."

As you can probably tell, I don't like C#.

Wazzak
Last edited on
Topic archived. No new replies allowed.