最初はどうもなじめなかったObjective-Cのメソッドの呼び方。
Objective-Cで最初につまずくところだと思うのでまとめてみました。
例えば,NSString型の"str"というインスタンスがあるとする。
NSStringクラスには"length"というメソッドがある。
"str"インスタンスの"length"メソッドの呼び出しは下記の通り。
int len = [str length];
このように,"[オブジェクト メソッド]"で呼ぶ。
ちなみに自クラスのメソッドを呼ぶときは,
[self methodA];
のようになる。
NSStringクラスのsubStringToIndexメソッドは引数が必要だが,
その場合は下記のようになる。
NSString *str2 = [str subStringToIndex : 3];
このように,メソッド名の後ろにコロンと引数を記述する。
引数が複数あるときがすこしややこしく,
2つ目の引数から「ラベル」と呼ばれる引数の説明のようなものが登場する。
例えばNSMutableStringクラスのinsertStringメソッドは,
第一引数としてNSString型のオブジェクトを,第二引数としてNSUInteger型のオブジェクトを指定するが,
このうち第二引数には"atIndex"というラベル名がついている。
NSMutableString型の"mstr"インスタンスからinsertStringメソッドを呼ぶ時は下記の様になる。
[mstr insertString : str atIndex : 3];
このように,第一引数の後ろに「ラベル名 : 引数」の形で記述する。
第三引数以降も同様。
今後も暇だったらObjective-Cでつまずいたところをまとめていきます。
0 件のコメント:
コメントを投稿