Structure of C++
Structure of C++
C++ program structure is divided into various sections, namely, headers, class definition, member functions definitions and main function.
➦Note: C++ provides the flexibility of writing a program with or without a class and its member functions definitions.
➦ A simple C++ program (without a class) includes comments, headers, namespace, main() and input/output statements.
➦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.
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.