C/C++ or CPP is a general purpose programming language. It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory mnipulation. It was designed with a bias toward system programming and embedded, resource-constrained and large systems, with performance, efficiency and flexibility or use as its design highlights.
C++ also been found useful in many other contexts, with key streght being software insfratucture and resource constrained application, including desktop applications, servers, and performance critical applications. C++ is a compiled language, with implementations of it available on many platforms. Many vendors provide C++ compilers, including Free Software Fondation, Microsoft, Intel and IBM.
C++ is standarized by ISO ( International Organization for Standarization ), with the latest standard version ratified and published by ISO. The C++ Programming language was initially standarized in 1998 and was developed by Bjarne Stroustrup at Bell Labs since 1979, as an extension of the C language as he wanted an efficient and flexible language similiar to C, which also provided high-level features for program organization. Many other programming languages have been influenced by C++, including C#, D, Java and newer version of C.
C++ is one of the most popular languages primaly utilized with system / application software, drivers, client-server applications and embedded firmware. The main higlight of C++ is a collection of predefined classes, which are data types that can be instantiated multiple times. The language also facilitates declaration of user-defined classes. Classes can further accomodate member functions to implement specific functionality.
Multiple objects of a particular class can be defined to implement the functions with the class. Objects can be defined as instances created at run time. These classes can also be inherited by other new classes which take in the public and protected functionalities by default.
C++ includes several operators such as comparison, arithmetic, bit manipulation and logical operators. One of the most attractive features of C++ is that it enables the overloading of certain operators such as addition.
A few of the essential concepts within the C++ programming language include polymorphism, virtual and friend functions, templates, namespaces and pointers. A related programming language is Java, based on C++ but optimized for the distribution of program objects in a network such as the internet. Java is somewhat simpler and easier to learn than C++ and has characteristicthat give it other advantage over C++. However, both languages require a considerable amount of study.
The C++ language has two main components : a direct mapping of hardware features provided primarily by the C subset, and zero overhead anstraction based on those mappings. C++ inherits most of syntax.
To give compiler vendors greater freedom, the C++ standard commite decided not to dictate the implementation of name mangling, exception handling and other implementation specific features. The downside of this decision is that object code produced by different compilers is expected to be incompatible. There were, however, attempts to standardize compilers for particular machines or operating systems thought they seem to be largely abandoned now.
Tags:
CPP