C++ Tutorial – C++ was developed by Bjarne Stroustrup of AT&T Bell Laboratories in the early 1980’s, and is based on the C language. The name is a pun – “++” is a syntactic construct used in C (to increment a variable), and C++ is intended as an incremental improvement of C. Most of C is a subset of C++, so that most C programs can be compiled (i.e. converted into a series of low-level instructions that the computer can execute directly) using a C++ compiler.
C++ is a general purpose programming language that supports various computer programming models such as object-oriented programming and generic programming. C++ is regarded as a middle-level language, as it comprises a combination of both high-level and low-level language features.
By learning C++, you can create applications that will run on a wide variety of hardware platforms such as personal computers running Windows, Linux, UNIX, and Mac OS X, as well as small form factor hardware such as IoT devices like the Raspberry PI and Arduino–based boards.
Object-Oriented Programming – C++ fully supports object-oriented programming, including the four pillars of object-oriented development:
- Data hiding
Standard Libraries – Standard C++ consists of three important parts:
- The C++ Standard Library giving a rich set of functions manipulating files, strings, etc.
- The core language giving all the building blocks including variables, data types and literals, etc.
- The Standard Template Library (STL) giving a rich set of methods manipulating data structures, etc.
The ANSI Standard – 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.
Use of C++
- C++ is used by hundreds of thousands of programmers in essentially every application domain.
- C++ is being highly used to write device drivers and other softwares that rely on direct manipulation of hardware under realtime 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++.