The feature of C++ are:1.Object-oriented programming
4.Middle-level programming language
5.Structure Programming language
8.Powerful & Fast
11.Syntax based language
Object-oriented programming is an approach that provides a way of modularizing programs by creating a partitioned memory area for both data and functions that can be used as templates for creating copies of such modules on demands
Object-oriented programming shifts the focus of attention to the objects, that is, to the aspects on which the problem is centered. A program designed to maintain bank accounts would work with data such as balances, credit limits, transfer, interest calculation, and so, on. An object representing an account in a program will have properties and capacities that are important for account management.
Here the oops concept Class,Object,Polymorphism,Inheritance,Encapsulation,Abstraction
In OOP we say that objects are members of classes. Here we know that almost all computer languages have built-in data types. For example, data type int(predefined in C++).
When you approach a programming problem in an object-oriented language, you no longer ask how the problem will be divided into functions, but how it will be divided into objects.
The mechanism of deriving a new class from an old one is called inheritance. the old class is known as the base class or superclass or parent class and the new one is called subclass or derived class or child class. The inheritance allows a subclass to inherit all the variables and methods of their parent classes
Describing the functionality of a class independent of its implementation is called data abstraction. Classes normally hide their implementation details from the clients of the classes. This is called information hiding.
Using operators or functions in different ways, depending on what they are operating on, is called polymorphism(one thing with several distinct forms)
C++ provides a structural approach which can simply break the problems into parts. where it has a standard library set, data types, Function and many more techniques for implementing the solution
Platform dependent mean C++ program can be implemented only on that operating on which it has been developed
4.Mid-level programming language
C++ also has the ability to do low-level as well as high-level programming, Hence it is called mid-level programming language
5.Structure programming language
This allows programmers to specify that many activities are to occur in parallel. The other widely used high-level languages are C,C++ generally allow the programmer to write programs that perform only one activity at a time. Structure programming related to disciplines of structured systems analysis and design.
C++ contains lots of built-in libraries let see some header files and its functionality
1.<cassert> :Contains macros for adding diagnostics that aid program debugging.This replaces header file<assert.h> from pre-standard C++
2.<cctype> :Contains function prototypes for functions that test characters for certain properties, and functions that can be used to convert lowercase letters to uppercase letters and vice versa.This header file replaces header file <ctype.h>
3.<cfloat> :Contains the floating-point size limits of the system.This header file replaces header file <float.h>
4.<climits> :Contains the integral size limits of the system.This header file replaces header file <limits.h>
5.<cmath> :Contains function prototypes for math library functions.This header file replaces header file <math.h>
6.<cstdio> :Contains function prototypes for the C-style standard input/output library functions and information used by them.This header file replaces header file <stdio.h>
7.<cstdlib> :Contains function prototypes for conversion of numbers to text, text to numbers, memory allocation, random numbers and various other utility functions.This header file replaces header file <stdlib.h>
8.<cstring> :Contains function prototypes for c-style string processing functions.This header file replaces header file <string.h>
9.<ctime> :Contains function prototypes and types for manipulating the time and date.This header file replaces header file <time.h>
10.<iostream> :Contains function prototypes for the C++ standard input and standard output functions.This header file replaces header file <iostream.h>
11.<iomanip> :Contains function prototypes for stream manipulators that format of stream of data.This header file replaces header file<iomanip.h>
12.<fstream> :Contains function prototypes functions that perform input from files on disk and output to files on disk.This header file replaces header file <fstream.h>
13.<utility>:Contains classes and functions that are used by many standard library header files.
14.<vector>,<list>,<deque>,<queue>,<stack>,<map>,<set>,<bitset> :These header files contain classes that implement the standard library containers.Containers store data during a program’s execution
<functional>: Contains classes and functions used by standard library algorithms
15.<memory>: Contains classes and functions used by the standard library to allocate memory to the standard library containers
16.<iterator>: Contains classes for accessing data in the standard library containers.
17.<algorithm>: Contains functions for manipulating data in standard library containers
18.<exception>,<stdexcept>: These header files contain classes that are used for execption handling
19.<string>: Contains the definition of class string from the standard library
20.<sstream>: Contains function prototypes for functions that perform input from strings in memory and output to strings in memory
21.<locale>: Contains classes and functions normally used by stream processing to process data in the natural form for different languages
22.<limits>: Contains classes for defining the numerical data type limits on each computer platform
23.<typeinfo>: Contains classes for run-time type identification(determining data types at execution time).
C++ enables programmers to control the allocation and deallocation of memory in a program for any built-in or user-defined type. This is known as dynamic memory management. So C++ provides dynamic memory management techniques.
8.Powerful & fast
C++ is fast language as compilation and execution require less time. Because of Object-oriented programming C++ program requires less time to execute
Pointer variables contain memory addresses as their values. Normally, a variable directly contains a specific value. A pointer, on the other hand, contains the address of a variable that contains a specific value
In C++ the first stage of a program is compilation without compilation the program cannot be executed. So the compiler compiles the program and then executes it.
11.Syntax based language
In computer science, the syntax has become the set of rules to be followed by the programmer for writing a program in a structured manner. Where text-based are written in the sequence of character