2012年5月23日水曜日

クラスの中身:実装ファイル「.m」

Objective-Cの実装ファイルはインターフェースファイルで宣言した中身を記述します。拡張子は「.m」になります。

実装ファイルの基本的な構成

インターフェースファイルの基本的な構成は以下のようになります。

#import インターフェースファイル名

@implementation クラス名

メソッドの実装

@end

#import

実装ファイルの場合は、少なくとも自身のインターフェースをインポートする必要があります。インターフェース中でほかのクラスのインターフェースファイルをインポートしている場合は、そのインターフェースを書く必要はありません。

クラス名

ここにはどのクラスを実装するものかを示すために記述します。クラス名はコンパイラディレクティブ「@implementation」に続けて記述します。上位クラスを書く必要はありません。インスタンス変数もインターフェースに宣言しているため書く必要はありません。

メソッドの実装

インターフェースで宣言した中身の記述を行います。メソッドの実装の基本的な形はメソッドの宣言と同じ記述を「;」を消し、「{}」で囲み、本体を記述します。

+ (戻り値) メソッド名{
    メソッド本体
}

- (戻り値) メソッド名{
    メソッド本体
}


インスタンス変数へのアクセス

実装部分では、インターフェースで宣言したインスタンス変数にスコープに関係なくそのままアクセスできます。

また、スコープとして「@public」を指定したインスタンス変数にクラスの外からアクセスするにはC言語の構造体フィールドのに対するアクセス方法と同じになります。
SomeClass sc = [[SomeClass alloc] init];
sc->pubVar = 5;

参考書籍

Objective-C プログラマーズバイブル

0 件のコメント:

コメントを投稿