What are the disadvantages of C++?

Showing Answers 1 - 33 of 33 Answers

zjffdu

  • Aug 5th, 2007
 

Not type safe
Not pure OO

  Was this answer useful?  Yes

bornToLose

  • Sep 22nd, 2007
 

1. Scope is also limited
2. Platform dependent
3. does not give excellant graphics as compare to java
4. Not case sensitive
5. Less features as comapred to Java& C#.
6. Not applicable in web enviornment

redleader

  • Apr 16th, 2008
 

C++ requires a better aptitude to programming, and is more technically demanding than Java.

Java would be nowhere without C++, and before anyone tries to make a comment, they should firstn look at what all the JVM's are written in!!!!!!!!!


I'm partial to sun's hotspot myself.

  Was this answer useful?  Yes

r v p

  • May 7th, 2008
 

In addition, extra programming effort is required in C++ to free up used memory - using delete etc, for all the memory locations that are used on the heap. In Java, the garbage collector automatically frees up memory when the variable goes out of scope (although we cannot be sure that it does run)

  Was this answer useful?  Yes

redleader

  • May 8th, 2008
 

Not knowing when the garbage collector will run is a real problem in Java. The issues in Java surround the JVM, and second guessing how it will behave. So the problem domain has just shifted, but now it has become more speculation than scientific fact, unless you know the JVM implementation.

In that case, you will also need to know C++!!!!!!

Just to correct points made earlier by others.

C++ is not pure OO, it is all OO plus C backward compatibility.
C++ is case sensitive.... this shows that some haven't event written a line of code in C++
The issues some people have with C++, normally amount to the fact that they don't have the required skill to program in that language. The advice is; stick to what you know.

In regards to memory management. I have never had any problems with it.

Graphics; well the most sophisticated graphics are rendered and written using C++.

Some can drive a family car, but few would be able to drive a formula 1 racing car!!!!!


Stick to what you know!!!!!



C++ has plenty of features than C, so a lot of syntax needs to be know by the programmer. Well when we need more, we should learn more.

Another disadvantage is that C++ is not suitable for embedded controllers, as the executable size is more in C++, than in C and assembly. This is because more assembly instructions are internally generated to ensure total privacy and encapsulation.

By using exceptional handling we slow down the process, so is the case with virtual functions.

So C++ is not suited in embedded applications which are limited by memory and speed.

  Was this answer useful?  Yes

Sanjay

  • Apr 20th, 2013
 

Java is Beautiful Language , & who said that in java you don't required any logical aptitude.. now slowly c++ will be disappear

  Was this answer useful?  Yes

Lokeshkumar Rajendran

  • Jul 22nd, 2014
 

C++ has the disadvantage that its not purely object oriented ,the concept of friend function violates the concept of encapsulation which is one of the most import concept in oops

  Was this answer useful?  Yes

Compared to what? C++ is a potentially low-level, close to the metal language, so potential for performance, though perhaps not as much as assembler, conversely its quite hard to learn, and now a big language. Pick your language for your application, and gain exposure to as many languages as possible. Sorry to be so vague, but its a hug topic!

  Was this answer useful?  Yes

There is nothing really wrong with C++ anymore. The few reservations I had personally have been fixed with the latest C++11 standard:

- C++ wasnt really designed for writing multithreaded applications. That has now been fixed.
- The lack of Lambda (Anonymous) functions. To pass a function pointer as an argument it was necessary to define a function and name it, even if it was only ever going to be used as an argument to another function. That is now no longer necessary because you can define a nameless anonymous function at the site of the function call itself.

C++ is now perfect :)

PS: To Sanjay about who said C++ will now vanish - Please tell me what people will use then to create Operating systems and internet browsers and Java Virtual Machines in? Java?

  Was this answer useful?  Yes

Give your answer:

If you think the above answer is not correct, Please select a reason and add your answer below.

 

Related Answered Questions

 

Related Open Questions