/    /  CPP- OOL & History of C++

Object-Oriented Languages

 

Languages must support a number of OOP concepts to claim that they are object-oriented languages. Depending upon the features they support, they can be classified into the following two categories:

  1. Object-based programming languages.
  2. Object-oriented programming languages.

 

1. Object-Based Programming:

This is the style of programming that primarily supports encapsulating and identifying the object. The key attributes required for object-based programming are:

  • Data encapsulation
  • Data hiding and access mechanisms
  • Automatic initialization and clear-up of objects
  • Operator overloading

Languages that support programming with objects are considered to be object-based programming languages. They do not support inheritance and dynamic binding. Ada is a typical object-based programming language.

 

2. Object-oriented programming:

It integrates all object-oriented programming functionalities and two additional functionalities, namely inheritance and dynamic linking.

Object Oriented features = object-based features + inheritance + dynamic binding

Languages that support these features include C++, Smalltalk, Object Pascal, and java.

 

Brief History of C++

C++ is an object-oriented programming language. It was developed by Bjarne Stroustrupat AT&T Bell Laboratories in Murray Hill, New Jersey, USA, in the early 1980s. It supports object-oriented programming features and still retains the power and elegance of C. Therefore, C++ is an extension of C with a major addition to the original C language. C++ is a superset of C. Therefore, almost all C programs are also C++ programs with few minor differences. The most important facilities that C++ adds to C are classes, inheritance, function overloading, and operator overloading. These features enable you to create abstract data types, inherit properties from existing data types, and support polymorphism, then making C++ a truly object-oriented language.