【Objective-C】メソッドの書き方/読み方
こんにちは、Soda(@soda_SE)です。
独特なメソッド表記。
以下のサイトが一番分かりやすく解説されていた。
Cocoaの素、Objective-Cを知ろう(3):Objective-Cのクラス定義を理解しよう (2/3) - @IT
e. 引数が2つと戻り値があるメソッド
- (NSString *)myMethod5:(NSString *)argString myInt:(int)argInt;
↓メソッドの実行例
NSString *result = [test myMethod5:@"test" myInt:5];
最も特徴的なのは、eでしょう。第2引数に注目してください。int型のargIntという引数を受け取っていることは分かると思います。では、:(コロン)の前に記述されている「myInt」は何を表しているのでしょうか。
Objective-Cでは、メソッドの引数の1つ1つに、メッセージ式で利用するためのキーワード(メッセージキーワード)を指定することができます。メッセージキーワードは、上記のmyIntのように:(コロン)の前に記述します。そして、それらすべてのキーワードをつないだものが、そのメソッドのメソッド名ということになります。
上記eのメソッド名は、「myMethod5:myInt:」です。メソッド名には:(コロン)も含まれる。
Objective-Cでは、引数一つ一つにメッセージキーワードなるものが指定されていて、
それを繋げたものがメソッド名になるってことなのか。
引数そのものがメソッド名だから、そのメソッドがやりたいことの全体像はつかみにくい感じを受ける。
慣れないな〜。
Thank you for reading♪
☆written by Soda(@soda_SE)