Why one should choose C++

Sanskruti's Avatar author of Why one should choose C++
This is an article on Why one should choose C++ in C++.
It's a truly neutral question: given that there are many languages to choose from, why do you choose to program in C++?

1. Compared to many of the other OO languages (i.e. Java, C# etc.), C++ has better support for the functional programming style.

2. Good support for generic programming.

3. C++ is faster. No matter what you have heard, the overall speed of C++ applications (either real or perceived) is greater than that of other languages.

4. Templates and generic programming without too much brain twisting. Templates and type safety is very important. If C++ hasn’t had templates, it would not be used.

5. Direct interfacing with C and O/S routines.

6. Plethora of good libraries.

7. C++ is always the right choice for serious applications that can be re-compiled on multiple platforms.

8. C++ is preferred choice of programmers all over the world when it comes to programming for creating games.

Why programmers don't program in other languages other than C++?



1. Java and C# can't do many intelligent things that C++ can.

2. Having everything in classes does not always make sense.

3. Python and perl have weird syntax. ML and Haskell have even more weird syntax.

4. The most important reason: it is not directly visible, from the available online resources, that what can be done with C++, can not be done with LISP/ML/Haskell/O'caml/etc.

In other words, gist of the matter is it's not the elegance of a language that counts, but rather the most cliche of arguments: what one can do with a language, in the shortest space and time.
Go4Expert Founder
15Mar2007,07:30   #2
shabbir's Avatar
I choosed it because I love it.
dav
Light Poster
16Mar2007,00:18   #3
dav's Avatar
hi dudes
this is my first commet in this site actually I have spend 6 years in working with Delphi which I conseder a great language but now and sadly we have to divorce cuz in the 9th month of this year I'll start a new studing in the university where only C++ and JAVA are allowed, so I do not know what 2 do and which is the better some people say C++ others say Java can u help me???????????????????????????????????????????????? ????????????

best regards
Go4Expert Founder
16Mar2007,06:43   #4
shabbir's Avatar
My answer will be biased but it all depends on the job you do you will love the one in which you work the most as was the case with Delphi.
TechCake
24Jan2008,18:18   #5
asadullah.ansari's Avatar
No need Of C++ If you have excellent skill in C. Except Industrial needs c++ to make design in less time.

Means you can do all things in C. C++ only making less man power in Industries.
Go4Expert Member
25Jan2008,14:05   #6
oleber's Avatar
This is ridiculous

C++ isn't faster or better then Java 5 or 6 in many cases:
-> If you need to use virtual methods, the base of any OO programming.
-> C++ way of allocating memory is slower then the one used by the Java VM.
-> Java is able of doing runtime optimizations, and all the ones that a C++ compiler can do.
-> Java has less errors by loc in average.
-> Java is easer to port on multiple platforms. No recompilation is needed.


Now comparing to Python, Perl, Ruby, ...
-> you get less code, don't get surprised if you do the some code 10x less code. So fast Development.
-> you have many more library's and all the ones of C++.
-> perfect languages to the 80% of the code that you are running 20% of the time.
-> all this languages can call C code in a ease way.


Now comparing to ML, Haskell, Prolog, ...
-> They have different concepts Functional Programming or Logic Programming. They have there areas where any of the previous are suitable. For example the VC++ uses Prolog.


And telling the truth,
If I need running fast, I will do it in C.
If I need realtime, I will do it in ADA.
If I need beauty I'll do it in Java.
If I need fast development, I will do it in Perl.


C++ is good for games since for long time it was the best, and many libraries are done on it, just that.

THE KING IS DEAD, long life to the new kings
Newbie Member
28Jan2008,09:00   #7
bloom_star7's Avatar
Hi,

All of What You discussed is correct up to maximum extent. But the missing thing is

The Main power of C++ is
1. Its ability to Use the oops concepts which is missing in C. ( this feature will help us in creating the Good design apporach)
2. We can use the pointers in C++, which is missing in Java.
TechCake
28Jan2008,11:04   #8
asadullah.ansari's Avatar
Quote:
Originally Posted by bloom_star7
Hi,

All of What You discussed is correct up to maximum extent. But the missing thing is

The Main power of C++ is
1. Its ability to Use the oops concepts which is missing in C. ( this feature will help us in creating the Good design apporach)
2. We can use the pointers in C++, which is missing in Java.
i am apposing your first point. Who is saying C miss oops concepts. Okay according to definition given by some C++ guys C miss OOPs. But You can do all design as C++.
You might be know that all very big complex designing is in C only like Operating System. Can you say that operating sytem is not well designed. or it is less complex

Last edited by asadullah.ansari; 28Jan2008 at 11:20..
Go4Expert Member
28Jan2008,12:24   #9
oleber's Avatar
In Java you just have references/pointer


The the question of the C versus C++
First of all remerber the history of the first compilers of C++, they where just translatting the code to C and after the C compiler where doing the work. Basicaly the object was passed has the first argument of the method, similar to some scripting languages today like Perl.

So a good desing can be done in any language, since good design should not depend of the programming language.
TechCake
28Jan2008,19:46   #10
asadullah.ansari's Avatar
I did'nt mean that... I mean complex problem can be solved by C with more efficient than C++.

>>> Reason is that in C a lot of skills and time is required. Industries can'nt afford it . So they are easily using C++.