History
of C++ :
The C programming language was devised
in the early 1970s by Dennis M. Ritchie an employee
from Bell Labs (AT&T).
Many other programming languages are derived
from the C language. Some did well and some did not. The
languages Objective-C and C++
for instance are derived
from the C
language. Both languages add the
“object oriented” element to the language C. One of the most recent languages, that used
much of the C language,
is Java.
The programming language C++ (originally named “C
with Classes”) was devised by Bjarne Stroustrup also an
employee from Bell
Labs (AT&T). Stroustrup started working on C with Classes in 1979.
The first edition of Stroustrup's
book, The C++ Programming
Language, was published
in early 1986. After the release of Version 2.0 in 1989, C++
was rapidly acknowledged as a serious, useful language.
Work began that
year to establish
an internationally recognized language standard for it. In
1990, “The Annotated
C++ Reference Manual” was published. This work became
the basis for the
future standard. (Keep in
mind that there were additions to the language after 1990).
In 1997, a
committee of the American National Standards Institute (ANSI) completed
and published internally the Draft Standard - The C++ Language,
X3J16/97-14882, Information Technology Council (NSITC), Washington,
DC.
As you can
see it took
a long time (almost 20 years) to come
to a standardized
version of the language. In 2003
the committee published a corrected version of the C++ standard.
Ongoing work to refine the standard is being
done by the ISO with
the International Electro technical Commission (IEC), an international
standards and conformity
assessment body for all
fields of electrotechnology.
In 2005, a Technical
Report 1 , also known as
"tr1" was published, containing many extensions
to the C++
language and standard
library. In 2010, the international standardization working group on
C++ was named
ISO/IEC JTC1/SC22/WG21.
History
Partiton :
From the above discussion history can be divided into two parts
:
11) Early
C++ 2) Standard C++
13)
Early
C++ :
In 1979, New features was introduced like classes, member functions,
derived classes , separate compilation, public and
private access control, friends function and classes, , type checking of function arguments,
default arguments, inline functions, overloaded assignment operator, constructor, destructor, f() same as
f(void), call-function and return-function (synchronization features, not in C++). Libraries:
the concurrent task library these libraries not in C++.
In 1982, C was introduced with Classes reference manual published.
In 1984 C84 implemented, reference manual published.
In 1985 Cfront 1.0 was introduced with additional features as described
below,
New features includes virtual functions, function and operator overloading, references,
new and delete operators , the keyword const, scope resolution
operator,
Library additions: complex, string, iostream. It was 1st edition of The C++ Programming Language.
In 1989 Cfront 2.0 was introduced with additions
of new features.
New features includes multiple inheritance, pointers to members,
protected access, type-safe linkage, abstract classes, static and const
member functions, class-specific new and delete
Library additions: I/O
manipulators.
In 1991 Cfront 3.0 was released.
That was 2nd
edition of The C++ Programming Language.
2)
Standard C++ :
In
1990 American National Standards Institute: ANSI C++ Committee founded.
In 1991 ISO International Organization for Standardization C++ Committee founded.
In 1992 STL Standard Template Library implemented in C++.
In1998
C++98
(ISO/IEC
14882:1998) was released with additions of new features.
This is 3rd
edition of the C++ Programming
Language.
New features: RTTI (dynamic _ cast, typeid) , covariant
return types, cast operators, mutable,
bool, declarations in conditions,
template instantiations, member templates, export
Library additions: containers, algorithms, iterators,
function objects (based on STL), locales, bitset,
valarray, auto _ ptr, templatized string, iostream, and complex.
7
Things that you didn’t know about C++ Programming
Originally created in the
early 1980s, C++ is a general purpose, object oriented programming language that supports
generic programming and low-level
memory manipulation. The language was designed
with
an emphasis on system programming and embedded large system.
Today we’re going
to reveal some
fun facts about C++ , some of which may surprise you.
1.
C++
Influenced Many Other
Programming Languages
According to Wikipedia, C++ has
influenced many other programming
languages, some of
which include C# , java and even newer versions of C. If C++ was never created, who knows what these
programming languages would look like today.
2.
C++
was Originally Called ‘The
New C’
Computer programmer
Rick Mascitti is credited
with giving C++ its
name, with the ++
indicating an improvement from C programming. But before
it was given
this name, C++ was actually referred to as “the new C.”
This is because C++ draws
inspiration from C, building upon its
framework while adding new
features and functions
to the language.
3.
C++ Introduces Object-Oriented Programming
Although it was lacking
in C, object-oriented programming was introduced in C++.
Among other things, C++ supports
the four primary features of OOP:
abstraction, inheritance, polymorphism and encapsulation. With that said,
C++ is unique in the sense that it supports deterministic destructors for classes
— a feature that’s not found
in other OOP languages.
4.
C++
has More than
35 Operators
C++ currently has more than 35
different operators, ranging from arithmetic
and bit manipulation to logical operations, comparisons and more. Virtually all of these operators can be overloaded for specific
types, although there are
a few exceptions, one of which is the conditional operator. This vast array
of operators makes C++ user definitions more like
built-in types.
5.
C++
has Two Main Concepts
C++ has two primary concepts on which
the language was built: direct mapping for hardware features and zero-overhead
abstractions for mapping. Perhaps this is
why the language is often
touted as a lightweight abstraction programming language used for
creating efficient abstractions while also
offering hardware access.
6.
C++
Supports Four Types
of Memory Management
Yep, C++ supports four different
types of memory management:
static storage duration objects, thread storage duration objects, automatic storage duration objects,
and dynamic storage duration objects.
7.
C++
was First Standardized in 1998
The working group known
as JTC1/SC22/WG21 first standardized C++ in 1998. Since then, it has been standardized
three other times, with
the most recent being
in 2014 (C++14). But that’s not the end
of the line
for the programming language. C++ is
expected to be standardized again in
2017, although an exact
date has yet
to be announced.
0 Comments