Computer Wissenschaftlern erstellt C + +, ein System- Programmiersprache , als eine Erweiterung des ursprünglichen C-Sprache in den 1970er Jahren entwickelt . Während C + + enthält alle Funktionen ot C , fügt es objektorientierten Fähigkeiten , um die Syntax und Bibliotheken. Aus diesem Grund kann C + +-Programmierer Vorteil der objektorientierten Paradigmen zu nehmen , einschließlich der Daten Abstraktion. Um zu verstehen, welche Daten Abstraktion ist , muss der Programmierer verstehen, wie C + + Klassen und Objekten Arbeit und die Bedeutung des Schutzes sensibler Daten vor Manipulation . Datentypen
In C + +, wie in vielen anderen Sprachen , viel Programmierer mit Variablen , die bestimmte Arten von Daten. Diese Arten von Daten können aus verschiedenen Formen von dezimal und nicht Dezimalzahlen reichen , um Zeichen und Sätze. In C + +, muss der Programmierer angeben, welche Art von Daten eine Variable halten wird. Zum Beispiel muss eine Variable "x " , die eine ganze Zahl halten wird als Integer-Variable deklariert werden , mit der "int" Schlüsselwort. Da jedoch C + + Arbeiten in einer objektorientierten Weise Programmierer ihre eigenen Datentypen zu erstellen. Programmer - Datentypen erstellt werden als " Objekte ", und kann alles von Listen , um Formen zu Netzwerkverbindungen stellen .
Klassen
Um ein Objekt zu erstellen , muss ein Programmierer zuerst definieren , wie diese Daten Typ arbeitet . Sie tut dies durch die Definition einer "class" . Die Klasse teilt dem Computer mit , welche Art von Daten das Objekt enthält . Zum Beispiel definiert der folgende Code einen "Circle" -Objekt, das Informationen über seinen Radius (r) enthalten wird :
class Kreis {public : int r = 0; //integer " r " steht für die Radius };
Nun, wenn ein Benutzer auf ein Objekt zu verwenden, um einen Kreis darstellen will, kann sie erklären, ein Objekt des "Circle" Datentyp , so:
Kreis c ; //"Circle" ist der Datentyp
Vererbung
der Programmierer definieren auch die Circle-Klasse auf den Radius zu berechnen, indem Sie eine Member-Funktion . Dieser User -Funktion kann eine Aufgabe auf Daten innerhalb eines Objekts durchzuführen, und ein Ergebnis zurückgeben . Das folgende Beispiel erweitert die Klasse Circle , indem Sie eine Funktion " getArea ()" , die eine dezimale Näherung der Fläche des Kreises zurückgibt:
class Kreis {
int r = 0;
float getArea ( ) {return r * r * 3,14 ;}} ;
Kreis c = new Kreis (); cr = 1; cout << c.getArea (); //gibt " 3.14" auf dem Bildschirm
Daten Abstraction
The Circle -Klasse repräsentiert einen abstrakten Datentyp (ADT) , die wiederum eine reale Objekt in der realen Welt - wie ein Kreis oder eine Kugel . Allerdings muss der Benutzer nicht wissen müssen, wie diese Klasse , um es nutzen zu können arbeitet , nur , dass es etwas tut. Die " getArea () "-Funktion ist ein gutes Beispiel dafür : ein Benutzer der Klasse kann die getArea ()-Funktion , ohne seine Funktionsweise erfahren zu verwenden, nur das, was Eingaben erforderlich sind und was gibt zu erwarten . Dies sind Daten, Abstraktion, und es ist wichtig, weil es Programmierern, Objekte ohne zu wissen, ihre innere Struktur zu verwenden , so dass es einfacher für sie zu komplizierteren Code aus bereits bestehenden Klassen erstellen können.