Programmeren in C++/Inleiding: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
Elton (overleg | bijdragen)
k Wijzigingen door 185.82.195.162 hersteld tot de versie na de laatste wijziging door Nijdam
Regel 1:
{{Programmeren in C++}}
== Introductie ==
C++ is een variant van de [[Programmeren in C|programmeertaal C]]; de taal werd geïntroduceerd omdat C al een aantal jaren meeging en achterop raakte bij de mogelijkheden van modernere programmeertalen. Een van die mogelijkheden is het zogeheten object-georiënteerd programmeren. Dit is een van de belangrijkste vernieuwingen in C++.
 
De ontwerper van C++ is Bjarne Stroustrup, die toentertijd voor AT&T werkte. Zijn website is http://www.stroustrup.com/.
 
Naast structureel programmeren, zoals dat in C gebeurt, kan in C++ ook object-georiënteerd gewerkt worden. Omdat C++ beide programmeermethoden ondersteunt, wordt C++ een hybride taal genoemd. Tijdens de ontwikkeling van C++ is een van de hoofdpunten altijd geweest, dat C-programma's compileerbaar zijn met een C++ compiler (backward compatibility). Dit is niet voor alle aspecten van C gerealiseerd, maar wel voor het overgrote deel.
 
===Geschiedenis===
Bjarne Stroustrup, een computerwetenschapper van Bell Labs, was de ontwerper van C++ (hij noemde het "C met Klassen") en ontwierp deze taal in 1986 als verbetering van de programmeertaal C. De verbeteringen begonnen met concepten voor object-georiënteerd programmeren, zoals klassen, gevolgd door veel andere dingen, zoals virtuele functies, overloading van operatoren, multiple inheritance, templates en exception handling. Deze en vele andere dingen werden in een boek beschreven.
 
De programmeertaal C++ is een standaard erkende taal door de ANSI (Het Amerikaanse Natinonale Standaard Instituut), de BSI (Het Britse Standaard Instituut), DIN (Het Duitse Nationale Standaard Organisatie), en vele andere nationale standaardiseringsorganen, en was erkend door de ISO (Internationale standaard Organisatie) in 1998 als ISO/IEC 14882:1998.
 
== Veranderingen ==
 
=== Headers ===
Een eerste verschil met C is dat de zogenaamde header-bestanden geen extensie meer hebben:<br />
 
'''C'''
{{code
|Taal= C
|Titel=
|Code=
<source lang=c>
#include <stdio.h>
</source>}}
 
'''C++'''
{{code
|Taal= C++
|Titel=
|Code=
<source lang=cpp>
#include <iostream>
</source>}}
 
Een volgend verschil is dat er zogenaamde ''naamruimten'' (namespaces) worden gebruikt; dit om conflicten te voorkomen. De standaard header-bestanden gebruiken alle de namespace "std" (standard). Om deze namespace voor het gehele document te laten gelden, kun je "using namespace std;" gebruiken:
 
{{code
|Taal= C++
|Titel=
|Code=
<source lang=cpp>
#include <iostream>
using namespace std;
</source>}}
De oude C-headers kunnen in C++ echter wel nog gebruikt worden.<br />
Veel standaard C-headers zijn geconverteerd naar C++.<br />
Ze krijgen dan geen extensie meer, hebben een c voor hun naam gekregen en gebruiken naamruimten.<br />
Bijvoorbeeld "stdio.h" wordt "cstdio".
 
=== Functies versus objecten ===
Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.