備忘録

開発でつまったところの備忘録.不定期に更新します.

2013-10-10から1日間の記事一覧

デリゲート

デリゲートは簡単に言うと、あるオブジェクトが別のオブジェクトに処理を代行してもらう機構です。 既存のクラスに新しい機能を付け加えたり、情報を取得して利用するための柔軟性の高い仕組みとして便利に使うことができます。継承でも同様なことは実現でき…

ブロックオブジェクトまとめ

ブロックオブジェクトはObjective-CではなくC言語の機能として実装されています。 他のプログラミング言語ではクロージャとして知られている言語機能に相当します。 ・定義(ブロックリテラル) ^( 引数列 ) { 本体 } ・変数宣言 返り値の型 (^ブロック変数)…

無名カテゴリを用いたprivateなproperty宣言について

これもよく忘れるのでまとめときます まずカテゴリとは あるクラスの一部分のメソッドを実現するモジュールのこと で、具体的には @interface クラス名 (カテゴリ名) メソッド宣言; @end @implementation クラス名 (カテゴリ名) メソッドの定義; @end で書き…

プロパティ変遷まとめ

なんども忘れるので一回まとめときます ・昔 @interface A : NSObject { int member; //インスタンス宣言 } @property (retain) member; //プロパティ宣言 @end @implementation A : NSObject { @synthesize member; //セレクタ(インスタンス、アクセサ宣言…

objective-cでのprivate宣言

@interface A : NSObject { id protected; @public id public; @private id private; } - (id) method1; @end @implementation A { id private2; } - (id) method1{ ..... } このときprivate2はヘッダーに現れないので実質隠蔽されてprivateと同じ扱いになり…