C++ is a middle-level and general-purpose programming language created by Bjarne Stroustrup starting in 1979 at Bell Labs. It is an extension to C programming with additional implementation of object-oriented programming (OOPS) concepts. It supports object-oriented programming, operator overloading, exception and error handling, namespace feature, and many other features. It runs on a variety of platforms, such as Windows, Mac OS, and the various versions of UNIX. C++ is the most widely used programming languages in application and system programming. Some important features of C++ are given below:
Simple Language - C++ is a simple language. It is very easy to understand and learn. It provides structured approach that means a problem can be solved by breaking it into parts.
Case-Sensitive Language - Like C and Java, C++ is a case sensitive language and treats the uppercase and lowercase characters in a different manner.
Powerful & Fast Language - C++ is a fast language as it takes very less time in compilation and execution.
Object-Oriented Programming Language – C++ is an object oriented programming language. This is one of the most important feature of C++. C++ lets an user to implement real-time problems based on data abstraction, data encapsulation, inheritance, data hiding, and polymorphism.
Machine Independent Language – C++ can be interpreted on various operating systems including UNIX-based systems, Linux, Mac OS and various versions of Windows.
Mid-Level Language – C++ is a mid-level language and enables low-level language featuress like development of system applications such as kernel and drivers. It also supports the feature of high-level language. Hence C++ is a mid-level language.
Compiler Based Language – C++ is a compiler based language which means any C++ program can not be executed without compilation. Therefore, first of all the C++ program need to be compiled using compiler, after that the program can be executed.
Dynamic Memory Allocation - C++ supports the use of pointers which means a user can directly interact with memory and allocate memory dynamically.
Syntax Based language - Like C and Java, C++ is a syntax based language. It follows programming protocols very strictly.
Rich Library Support – C++ provides lots of inbuilt functions which makes programming faster and easier. These functions can be accessed by including appropriate header file in the C++ program.
Structured Programming Language – C++ is a structured programming language that means any C++ program can be achieved in parts using functions, classes and objects. This makes any C++ program easy to understand and modify.