トップページ »  » 自作クラスで作るグローバル変数 その2 プロパティ編 objectiveC

自作クラスで作るグローバル変数 その2 プロパティ編 objectiveC

プロパティを使ったグローバル変数の作り方の解説です。

前回のバージョンはメソッドでデータをおくってました。
毎回 メソッド作るのめんどくさい場合 プロパティ というものを
使えばシンプルになります。 


[書式]
mmm.num
外部データを上記のように ドット構文で呼び出せる

データを受信
ans=mmm.num

プロパティ作る

各ファイルを開いて 下記のようにして下さい。

hファイル


#import


@interface alldata : NSObject {
int num;
}

@property (assign,nonatomic) int num;//これを追加

@end

mファイル


#import "alldata.h"
@implementation alldata

@synthesize num;//これを追加 プロパティ設定するのにいります


//送るデータの初期データinitに書く
- (id)init {


self.num=1000;
return self;
}

- (void)dealloc {
[super dealloc];
}
@end


これでプロパティの設定完了です。

外部から 呼び出し方法

数字を読み込みたいmファイルをひらく
ヘッダーに

#import "alldata.h"


を入れる

呼び出し方法


alldata *mmm;//オブジェクト作る
mmm=[[[alldata alloc]init]autorelease];//初期化
int ans=mmm.num//プロパティから変数読み込む

ドット構文で呼び出せる

以上がプロパティについて 自分的にまとめたデータです。
間違ってたらすみません。


補足

プロパティの宣言書式メモ

@property (assign,nonatomic) int num;
assign,nonatomic の文章について

iPhoneアプリケーションの場合、
普通の変数               nonatomicとassign
ビューやラベル、配列、ディクショナリー nonatomicとretain
文字列やデータなどには         nonatomicとcopy
を設定する


追加説明

サンプルコードをみているとたまに
@synthesize num=num2;

とか書いているサンプルがあります。

通常
プロパティへ数値を代入するとき
self.num=1000;

と かきますが上記のように書くと

num2=1000;
でプロパティに数値を代入する事ができます。


作り方

hファイル


#import


@interface alldata : NSObject {

int num2;//プロパティと同じ型で宣言

}

@property (assign,nonatomic) int num;

@end

mファイル


#import "alldata.h"
@implementation alldata
@synthesize num=num2;


- (id)init {

num2=1000; 
return self;
}

- (void)dealloc {
[super dealloc];
}
@end


このように
self.numと書くところを、num2として省略できます。
なお省略は自分のクラスでしか使えないようです。

[参考]
objectiveC プロパティについて
http://konton.ninpou.jp/program/cocoa/property.html

アドビの解説?
http://ylb.jp/iOSDev/SingletonSample.pdf#search='objectiveC%20プロパティ%20作る'

サルにでもできるiphoneアプリの作り方
http://ameblo.jp/micro-garden/entry-10338112606.html






by   at 18:46