C++ Overview:
This Overview of C++ Presents the key design, Programming, and language-technical concepts using examples to give the reader a feel for the language. C++ is a General-purpose Programming Language with a bias towards systems Programming that supports efficient low-level computation, data abstraction, Object-Oriented, and generic programming.
The C++ Programming language Provides a model of memory and computation that closely matches that of most computers. In addition, it Provides powerful and flexible mechanisms for abstraction; that is, the language construct that allows the programmer to introduce and use new types of objects that match the concepts of an application. Thus C++ supports styles of Programming that rely on fairly direct manipulation of hardware resources to deliver a high degree of Efficiency plus higher-level styles of Programming that rely on user-defined types to provide a model of data and computation that is closer to human's view of the task being performed by a computer. These higher-level styles of Programming are often called data abstraction, object-oriented programming, and generic Programming.
Object-Oriented Programming:
C++ Fully Supports Object-Oriented Programming, Including the Six Pillars of Object-Oriented Development:
CLASSES
Classes are an expanded concept of data structures: like data structures, they can contain data members, but they can also contain functions as members.An object is an instantiation of a class. In terms of variables, a class would be the type, and an object would be the variable. (read more...)
Data Abstraction:
Data abstraction refers to, providing only essential information to the outside world and hiding their background details, i.e., to represent the needed information in program without presenting the details. (read more...)
Encapsulation:
Encapsulation is an Object Oriented Programming concept that binds together the data and functions that manipulate the data, and that keeps both safe from outside interference and misuse. Data encapsulation led to the important OOP concept of data hiding. (read more...)
Information Hiding:
Information or data hiding is a programming concept which protects the data from direct modification by other parts of the program. (read more...)
Inheritance
One of the most important concepts in object oriented programming is that of inheritance. Inheritance allows us to define a class in terms of another class, which makes it easier to create and maintain an application. This also provides an opportunity to reuse the code functionality and fast implementation time. (read more...)
Ploymorphism
The word polymorphism means having many forms. Typically, polymorphism occurs when there is a hierarchy of classes and they are related by inheritance. (read more...)
Standard Libraries:
Standard C++ Library Can be Categorized into two Parts:
The ANSI Standard:
ANSI C, ISO C and Standard C refer to the Successive standards for the C Programming Language. Published by the American National Standards Institute (ANSI) and the
International Organization for Standardization (ISO) ,
Historically, The names referred specifically to the Original and best supported version of the standard ( Known as C89 or C90). The ANSI Standard is an attempt to ensure that C++ is Portable, that code you write for Microsoft's compiler will compile without errors, using a compiler on a Mac, Unix, a Windows box, or an Alpha.
The ANSI Standard has been stable for a while, and all the major C++ compiler Manufacturers support the ANSI standard.
Why To Use C++:
C++ is always used when there is a need for high performance and efficient application. it's an efficient and flexible language. The Philosophy of C++ is "Any features that you do not use. you do not pay for" That's why C++ is chosen when the task is to build big applications which should use fewer resources.
C++ is used by hundreds of thousands of Programmers in essentially every application domain. C++ being highly used to write drivers and other software that rely on direct manipulation of hardware under real-time constraints. C++ is widely used for teaching and research because it is clean enough for successful teaching of basic concepts.
“
Anyone who has used either an Apple Macintosh or a PC Running Windows has Indirectly used C++ because the Primary user interfaces of these systems are written in C++.