c++ ist nicht meine erste proggsprache.
C war meine erste programmiersprache.
es ist villeicht nicht gut für anfänger aber damals hatte ich davon noch 0 plan und da habe ich bei google programmieren eingegeben und da kam ein tutorial in c und da habe ich damit angefangen erst später habe ich begriffen das es auch noch mehr gibt.
Genauso ging es mir auch! ;D und ich bin froh darüber!
Doch eigentlich habe ich gefragt, da es (z.B. in Pascal oder C#) ein wenig anders (und vor allem: unlogischer) aussieht mit dem "Zugriff auf Klassenmember". Und ich habe auch ein Buch, bei dem :: benutzt wird und nicht wirklich erklärt wird.
Also pass' auf wenn du's wirklich nicht findest:
Jede Methode (Member-Funktion) und jedes Attribut (Member-Variable) heißen mit vollem Namen
|
Quellcode
|
1
|
Klassenname::Normalname
|
Wenn du nun der (das,die?) Member irgendwie deklarierst oder allgemein ansprichst, musst du ihn so schreiben.
Wenn du allerdings eine Instanz der Klasse (ein konretes Objekt) erzeugst und
dieses Objekt ruft eine Methode oder Variable von sich auf, dann muss der . - Operator benutzt werden.
Also merke:
:: = allgemeiner Zugriff
. = konkreter Zugriff über eine Instanz
Wenn du jetzt aber siehst, dass ein Member über ::
aufgerufen wird, dann nicht etwa
|
Quellcode
|
1
|
Instanzname::Membername
|
sondern so wie der Member eben heißt:
|
Quellcode
|
1
|
Klassenname::Membername
|
dies ist zum Beispiel der Fall, wenn ein statisches Member aufgerufen wird, also eine statische Member-Funktion oder eine statische Member-Variable, die ja nicht auf ein Objekt konkretisiert wird, sondern
allgemein für die Klasse gilt.
So, wenn du mehr über statische Member lernen willst, dann lies dein Buch,
das steht da bestimmt drin!
Ich hoffe, ich konnte dir helfen,
Till