C++ Grundkurs

Statische Methoden

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
C++ bindet statische Methoden nicht an das Objekt, sondern an die Klasse. Der Aufruf dieser erfolgt entweder mit oder ohne Instanzen der Klasse.
02:28

Transkript

In dieser Lektion möchte ich Ihnen statische Methoden in C++ vorstellen. Statische Methoden sind besondere Methoden, denn sie können mit oder ohne Instanz der Klasse aufgerufen werden. Rufen Sie statische Methoden über die Klasse auf, müssen Sie den Sichtbarkeitsoperator *::* die zwei Doppelpunkte hier verwenden. Diese Klasse *Account* besitzt eine statische Methode. Die Methode *getDesposits* ist statisch deklariert. Das heißt, die Methode ist an die Klasse und nicht an die Instanz gebunden. Zusätzlich besitzt sie ein statisches Attribut *deposits*. Wenn Sie auf die statische Methode zugreifen, sehen Sie hier, müssen Sie die zwei Doppelpunkte verwenden, so bekommen Sie den Wert *total*. Statische Methoden besitzen keinen *this*-Zeiger. Das ist der Grund, wieso statische Methoden nur auf statische Attribute, wie *deposits*, oder statische Methoden zugreifen können. Das zeige ich Ihnen jetzt in der Anwendung. Hier habe ich die Klasse *Account* nochmals. Die besitzt einen Konstruktor. Dem Konstruktor zähle ich *deposits* hoch und *deposits* steht für die Anzahl der Depots. Das ist ein statisches Attribut, das ich außerhalb der Klasse definiere. Hier wird es deklariert. Hier wird es definiert. Sobald ich einen neuen *Account* anlege, wird der Wert um 1 höher gezählt. Das heißt, ich beginne mit 0. Hier zähle ich also die Anzahl meiner Depots. Über die statische Methode *getDeposits* hier bekomme ich die Anzahl als Ergebnis zurück. Jetzt zeige ich das Ganze in der Anwendung. Im ersten Fall rufe ich hier *Account::getDeposits* auf und Sie sehen, ich rufe *Account:.getDeposits* auf der Klasse selber auf. Ich verwende hier keine Instanz der Klasse. Was bekomme ich raus? 0. Ich habe noch kein Depot angelegt. Dann lege ich einen *Account1* an, *Account2 an*, zähle *Deposits* hoch. *Deposits* hat danach den Wert 2 und das bekomme ich raus, wenn ich über *Account2* drauf zugreife mit der Methode *account2.getDeposits*, wenn ich mit *account1* darauf zugreife und wenn ich über die Klasse selber darauf zugreife mit den zwei Doppelpunkten. Sie sehen hier etwas Besonderes. Ich kann mit der Instanz auf eine statische Methode zugreifen. Ich kann aber auch direkt mit der Klasse auf die statische Methode zugreifen. Das Ergebnis ist natürlich immer das gleiche: die 2. In dieser Lektion habe ich Ihnen statische Methoden vorgestellt. Sie haben gesehen, dass Sie auf statische Methoden mit Instanzvariablen zugreifen können.

C++ Grundkurs

Steigen Sie in die mächtige Programmiersprache C++ ein und lernen Sie dabei alle wichtigen Funktionen mit Anwendungsbeispielen kennen.

8 Std. 14 min (147 Videos)
Derzeit sind keine Feedbacks vorhanden...

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!