NOTICE: Citizendium is still being set up on its newer server, treat as a beta for now; please see here for more.
Citizendium - a community developing a quality comprehensive compendium of knowledge, online and free. Click here to join and contribute—free
CZ thanks our previous donors. Donate here. Treasurer's Financial Report -- Thanks to our content contributors. --

Difference between revisions of "C++"

From Citizendium
Jump to: navigation, search
(moved external links to corresponding subpage)
(Future)
 
(15 intermediate revisions by 10 users not shown)
Line 1: Line 1:
 
{{subpages}}
 
{{subpages}}
 +
{{dambigbox|text=For other uses, see [[C (disambiguation)]].}}
 +
'''C++''' is a [[Programming language|programming language]] created by [[Bjarne Stroustrup]].  Originally, it extended the [[C programming language]], primarily by adding [[object oriented programming]] capabilities to it.  However, since the release of the [[C99]] standard, C++ is no longer a strict superset of C.
  
=Overview=
+
==History==
'''C++''' is a [[Programming language|programming language]] created by [[Bjarne Stroustrup]].  It added concepts from [[Object oriented programming]] to [[C programming language|C]].  However, since the release of the [[C99]] standard, C++ is no longer a strict superset of C.  The language facilitates [[generic programming]] through the use of [[templates]]. 
+
  
''For other uses, see [[C (disambiguation)]].''
+
Bjarne Stroustrup began developing a revision of the C programming language in 1979 while working at [[Bell Labs]] with the primary intention to add object orientated features to the language. Initially called 'C with classes' it was renamed to C++ in 1983 and made it's first official debut in 1985. Although originally targeted at the Unix OS, like it's ancestor C it is a portable language meaning code can be recompiled for new processor and OS architectures.
  
 +
==Features==
  
 +
The feature set of C++ has for a long while been the benchmark of comparison for other programming languages. It's ability to interface at a low level with the hardware and OS, complimented by advanced data representation and abstraction to empower the programmer, has seen C++ become one of the most ubiquitous languages of modern times.
  
[[Category:Computers Workgroup]]
+
Some of the languages features include:
[[Category:CZ Live]]
+
 
 +
* Data abstraction through classes and objects
 +
* Data encapsulation through data structures
 +
* [[polymorphism in programming languages|Polymorphism]]
 +
* [[inheritance (computers)|Inheritance]]
 +
* [[Pointer (computer science)|Pointers]]
 +
* [[generic programming]] (also known as ''parameterization of types'') through the use of [[templates]] (known in some languages as ''generics'').
 +
* It follows a bottom up approach in compilation as compared to the top down approach of C.
 +
 
 +
==Future==
 +
 
 +
While the future of C++ is secure given it's large user and code base, research and development has been shifting towards more modern languages such as [[C Sharp|C#]] and [[Java programming language|Java]]. New programmers frequently find these languages easier to learn and their modern constructs and syntaxes provide many powerful time saving and semantic improvements over C++.
 +
 
 +
For the fastest possible execution, lowest possible memory usage, accessing hardware at a low level, or in environments where more modern languages are not available [[native code]] will still be the preferred choice for some time to come. C++ will therefore most likely remain one of the most popular languages for many years to come (see [http://www.tiobe.com/index.php/paperinfo/tpci/C__.html Tiobe index]).

Latest revision as of 06:49, 22 July 2009

This article is a stub and thus not approved.
Main Article
Talk
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
Catalogs [?]
 
This editable Main Article is under development and not meant to be cited; by editing it you can help to improve it towards a future approved, citable version. These unapproved articles are subject to a disclaimer.
For other uses, see C (disambiguation).

C++ is a programming language created by Bjarne Stroustrup. Originally, it extended the C programming language, primarily by adding object oriented programming capabilities to it. However, since the release of the C99 standard, C++ is no longer a strict superset of C.

History

Bjarne Stroustrup began developing a revision of the C programming language in 1979 while working at Bell Labs with the primary intention to add object orientated features to the language. Initially called 'C with classes' it was renamed to C++ in 1983 and made it's first official debut in 1985. Although originally targeted at the Unix OS, like it's ancestor C it is a portable language meaning code can be recompiled for new processor and OS architectures.

Features

The feature set of C++ has for a long while been the benchmark of comparison for other programming languages. It's ability to interface at a low level with the hardware and OS, complimented by advanced data representation and abstraction to empower the programmer, has seen C++ become one of the most ubiquitous languages of modern times.

Some of the languages features include:

  • Data abstraction through classes and objects
  • Data encapsulation through data structures
  • Polymorphism
  • Inheritance
  • Pointers
  • generic programming (also known as parameterization of types) through the use of templates (known in some languages as generics).
  • It follows a bottom up approach in compilation as compared to the top down approach of C.

Future

While the future of C++ is secure given it's large user and code base, research and development has been shifting towards more modern languages such as C# and Java. New programmers frequently find these languages easier to learn and their modern constructs and syntaxes provide many powerful time saving and semantic improvements over C++.

For the fastest possible execution, lowest possible memory usage, accessing hardware at a low level, or in environments where more modern languages are not available native code will still be the preferred choice for some time to come. C++ will therefore most likely remain one of the most popular languages for many years to come (see Tiobe index).