2011年5月2日月曜日

Objective-Cを学ぶ

以前Objective-Cについて書きましたが、
改めてObjective-Cの書き方をざっとまとめてみます。
下記がわかれば、だいたいソースコードを読めるのではないかと・・・自身ないけど。

.hファイル
@interface クラス名 : 親クラス名 {
    int member1;
    (メンバ変数)
}
- (返り値)メソッド1;
- (返り値)メソッド2:(引数型)引数
- (返り値)メソッド3_1:(引数型)引数1 メソッド3_2:(引数型)引数2
@end
.mファイル

@implements クラス名
- (返り値)メソッド1
{
  メソッド1の処理
}

- (返り値)メソッド2:(引数型)引数
{
  メソッド2の処理
}

- (返り値)メソッド3_1:(引数型)引数1 メソッド3_2:(引数型)引数2
{
  メソッド3の処理
}
@end

メソッドの呼び出しは、
[オブジェクト名 メソッド名:引数];
です。

他には、
ヘッダーの読み込み(includeではなくimport)
#import <UIKit/UIKit.h>
他の場所で定義されたクラスの名前
@class クラス名
があります。

また、アクセッサとして、.hに
@property (nonatomic, retain) UIWindow *window;
.mに
@synthesize window;
と書けば、getter/setterメソッドを自動生成してくれます。


@property (nonatomic, retain) UIWindow *window;
の nonatomic は atomicじゃないので、非同期処理は対応しない、 retainは代入したときに参照カウントを1増やして解放されないようにする、っていう意味っぽいです。

0 件のコメント: