2011年1月27日木曜日

Objective-C(メッセージ)

Objective-Cの知識が無い状態で、いきなりiOS SDKを学ぶことは悪いことはあっても良いことは無いと思うので、ある程度のObjective-Cの基本的な知識をつけてからiOS SDKに入っていきたいと思っています。
そして、Objective-Cの基本として、まずはメッセージです。C/C++/Javaを知っている人はこのメッセージ式が今までと記述的に全く異なります。

メッセージ

Objective-Cではオブジェクトに対してメッセージ(メソッド呼び出し)を以下のように表現します。

[object message]

例えば、Carいうクラスがあってそのオブジェクトがcar、そのクラスにmoveというメッセージ(メソッド)を送る場合は、

[car move];


という感じ。Java/C++使いの方はいきなり違う(汗)って感じですよね。まあ、記述方式が違うだけですが。
そして、引数の渡し方も異なります。引数はメッセージの後にコロンを付けて指定します。

[car move:10];

carオブジェクトにmoveというメッセージを10という引数をつけて送信。
引数が1つの場合はまだイメージ出来るのですが、2つ目から少し違います。

[car move:10 arg2:20 arg3:30];

のような感じです。第一引数は値だけですが、第二引数からはキーワード(ラベル)を付与します。キーワード(ラベル)とはここではarg2, arg3の事を指します。文法上はキーワードの省略が可能ようですが、一般的には付けてるみたいです。
まあ、慣れだとは思いますが、記述方式が思っていたよりC++/Javaとは異なっているのには驚きました。そして、今後に登場する「オーバーロード」の機能に関しては、このラベルが重要な役割を果たしていることに気がつくことになります。今のところは、こんな感じで記述するだ程度で問題ないと思います。

0 件のコメント :

コメントを投稿