Characteristic of C++

Definition of C++

C++ is a high-level programming language developed by Bjarne Stroustrup at Bell Labs in 1980. C++ extends object-oriented features. It is very similar to C (invented by Dennis Ritchie in the early 1970s).


➦It is a compiler based, case-sensitive, free-form programming language that supports object-oriented, operator overloading, procedural and generic programming.

➦Bjarne Stroustrup is known as the creator or founder of C++ language.

➦C++ is also called as Superset of C (it means any valid C program can also be a valid C++ program. ) !

➦Source code can be written to be platfrom independent and written to take advantage of platform. C++ typically compiled into machine code.


Characteristics of C++

➦It is Simple, Easy to learn and Extensible

➦It is Structured and Memory Management.

➦It is Pointer, Recursion and Compiler Based.

➦Faster in Speed and support global variable.

➦It is High Level and Low Level Language.

➦It is Ritch Library, Mid-Level and Portable.

➦Syntax based, case sensitive and platform independent.

Difference Bitween C++ and Java

C++

➦C++ is an object-oriented language. However, in C language, single root hierarchy is not possible.

➦C++ is mainly used for system programming.

➦C++ was designed for systems and applications programming.

➦C++ supports the goto statement.

➦C++ supports multiple inheritance.

➦C++ supports operator overloading.

➦C++ supports pointers.

➦C++ is platform dependent.

➦ C++ uses compiler only. C++ is compiled and run using the compiler which converts source code into machine code.

➦C++ supports both call by value and call by reference.

➦C++ doesn't have built-in support for threads.

➦Write once compile anywhere

➦Allows both procedural programming and object-oriented programming.

➦ C++ supports Object-oriented features Procedural programming features.

➦In C++, you can't include the try/catch even if the function throws an exception.

➦C++ supports both method overloading & operator overloading.

➦It supports structures.

Java

➦Java is also an object-oriented language.It is a single root hierarchy as everything gets derived from java.lang.Object.

➦Java is mainly used for application programming. It is widely used in window, web-based, enterprise and mobile applications.

➦It was designed as an interpreter for printing systems but later extended as a support network computing.

➦Java doesn't support the goto statement.

➦Java doesn't support multiple inheritance through class. It can be achieved by interfaces in java.

➦Java doesn't support operator overloading.

➦Java supports pointer internally. However, you can't write the pointer program in java.

➦Java is platform-independent.

➦Java uses compiler and interpreter both.Source code is converted into bytecode.

➦Java supports call by value only. There is no call by reference in java.

➦Java has built-in thread support.

➦Write once run anywhere everywhere

➦Support object-oriented programming model.

➦Java support automatic garbage collection. It does not support destructors as C++ does.

➦In Java, try/catch must be defined if the function declares that it may throw an exception.

➦only supports method overloading. It does not provide support for operator overloading.

➦It does not support any structures.