Skip to main content
Top

2019 | OriginalPaper | Chapter

10. Klassen und Strukturen

Author : Boris Tolg

Published in: Informatik auf den Punkt gebracht

Publisher: Springer Fachmedien Wiesbaden

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Zusammenfassung

  • Eine Klasse beschreibt einen Bauplan für Objekte.
  • Sie erzeugt einen neuen selbstdefinierten Datentyp (der Datentyp string ist ein gutes Beispiel).
  • Ein Objekt, bzw. eine Instanz ist eine konkrete Ausprägung einer Klasse (z. B. eine string Variable, die einen bestimmten Text speichert).

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Footnotes
1
Da unter anderem durch eingebundene Bibliotheken Begriffe definiert werden können, ist es wichtig, dass eindeutige Ausdrücke gewählt werden.
 
2
Einige meiner Studierenden haben zu Beginn Probleme damit zu verstehen, warum diese Funktionen keine Parameter besitzen. Der Hintergrund ist, dass diese Funktionen immer auf einem Objekt der Klasse angewendet werden. Die Informationen, die sie wiedergeben oder verändern sollen, sind schon in dem Objekt vorhanden. Dennoch kann es natürlich Situationen geben, in denen auch bei einer Klassenfunktion zusätzliche Informationen über die Parameter transportiert werden müssen. Das funktioniert dann genauso, wie bei allen Funktionen.
 
3
In einigen Implementierungen sind auch mathematische Konstanten definiert, jedoch nicht in allen. Manchmal kann der Zugriff auf diese Konstanten auch nicht direkt erfolgen, es muss erst ein bestimmter Ausdruck definiert werden, bevor die cmath Bibliothek eingebunden werden darf. Häufig lautet dieser Ausdruck #define _USE_MATH_DEFINES. Da dies aber nicht standardisiert ist, wurde in diesem Buch darauf verzichtet, eine der Varianten zu verwenden, um eine allgemeine Einführung in https://static-content.springer.com/image/chp%3A10.1007%2F978-3-658-24131-5_10/432227_1_De_10_IEq13_HTML.gif zu geben. Stattdessen wurde eine Konstante PI definiert und verwendet.
 
4
Bei komplexeren Programmen, die eine grafische Oberfläche besitzen, ist dies ein übliches Vorgehen, da die Eingaben häufig nicht in dem Format eingelesen werden, das später verarbeitet wird.
 
5
In diesem Fall kann es jedoch sinnvoll sein, eine Klasse als Schnittstelle zu definieren, von der beide Klassen erben können.
 
6
Das dient auch in den cpp Dateien dazu, deutlich zu machen, dass eine Funktion zu einer bestimmten Klasse gehört.
 
7
Bei anderen Klassen können bei diesem Vorgehen allerdings verschiedene Probleme auftreten. Es wäre deshalb ratsam die Typumwandlung in der Klasse genau zu definieren.
 
Metadata
Title
Klassen und Strukturen
Author
Boris Tolg
Copyright Year
2019
DOI
https://doi.org/10.1007/978-3-658-24131-5_10

Premium Partners