C Objective C - Methodendeklarationen und Aufrufe

RobRob89

Ensign
Registriert
März 2011
Beiträge
213
Hallo zusammen.
Ich bin momentan dabei mich in Objective C einzuarbeiten und wollte mal fragen ob mir jemand mal die Syntax zu einer Methodendeklaration und einem Aufruf erklären kann. Den Aufbau kann ich halbwegs nachvollziehen jedoch der Aufruf bzw. die "Aufrufvariationen" sind sehr gewöhnungsbedürftig...
Wäre nett wenn das jemand komplett übersichtlich und verständlich posten könnte.

Vielen Dank!
 
Ich denke umweltbewusst - jede google Anfrage verbraucht verhältnissmässig sehr viel Strom^^ Ausserdem was ist daran zuviel verlangt ne klare und strukturierte Antwort drauf zu geben wenn man sich mit dem Thema auskennt? Der nächste "Googler" freut sich bestimmt darüber ;) ( mal abgesehen vom cb forum)
 
Hades85 schrieb:
Immer die selben Schimpansen hier -.-

Alles was wir hier im Forum fragen/beschprechen könnten wir googlen, also was soll sowas sinnloses?

Offensichtlich habe ich mich getäuscht.


RobRob89 schrieb:
Ich denke umweltbewusst - jede google Anfrage verbraucht verhältnissmässig sehr viel Strom^^ Ausserdem was ist daran zuviel verlangt ne klare und strukturierte Antwort drauf zu geben wenn man sich mit dem Thema auskennt? Der nächste "Googler" freut sich bestimmt darüber ;) ( mal abgesehen vom cb forum)

Habe leider keinen blassen Schimmer von Objective-C (und das wird auch sehr wahrscheinlich so bleiben).
Ärgere mich nur über die maßlose Unverschämtheit von anderen etwas zu erwarten ohne auch nur einen Finger krum zu machen.
Du fragst hier nicht nach einem konkreten Problem, sondern nach fundamentalem Wissen über eine Sprache - hier in Form von Syntax. Was erwartest du? Das große 101 Objective-C mit direktem Uplink in deinen Kopf?
 
Wer sagt denn das ich das erwarte?! Ich les grad ein Buch zu dem Thema... und da ist die Thematik nich allzu einleuchtend beschrieben. Mein Gott... OO
 
Um das ganze mal ein bisschen zu ergänzen:

Also Methoden mit einfachem Parameter deklariert man (etwa) so:


Code:
- (void) computeX: (id) stateY;

Methodenaufruf:

Code:
[myInstance computeX: 20]

Möchte man mehrere Parameter übergeben können wird eine Methode aufgesplittet:

Code:
- (void) computeX: (id) stateY  depth:(id) stateZ;

Methodenaufruf:

Code:
[myInstance computeX: 20 depth: 10]

Der Methodenname stetzt sich jetzt aus zwei Elementen zusammen wenn ich das richtig verstehe?
Ist jetzt z.b das folgende auch möglich:(?)

Code:
[myInstace computeX: 20]
[myInstace depth: 10]
 
Zuletzt bearbeitet: (code tags fehlen)
Nein, das geht nicht, weil es sich tatsächlich um eine Methode computeX:depth: handelt, nicht um zwei einzelne Methoden.
 
Danke jetzt bin ich beruhigt ;) Hatte schon "böses" geahnt^^ Welche Rollte spielen denn die "Schlüsselnamen" bezüglich Parametern einer Methode ? Wie Fließen die in die Syntax mit ein?
 
Was meinst du mit Schlüsselnamen?

Umgangssprachlich könnte man das Schema für Methodenaufrufe in Objective-C (und in Smalltalk, wo's ursprünglich herkommt) so darstellen:

Code:
machWasMit: argument1 und: argument2 undAuch: argument3...

wobei der volle Methodenname in diesem Fall "machWasMit:und:undAuch:" wäre.

In Smalltalk gibt's da ein schönes Beispiel, warum dieses Schema gar nicht so komisch ist, wie es im ersten Moment aussehen mag:

Code:
someArray at: 2 put: 5

fügt in das Array someArray an Position 2 den Wert 5 ein.
 
Zurück
Oben