Home > Prog > Objective C Archive
Objective C Archive
OAuthのFramework for Objective-C
- 2010-01-10 (Sun)
- Objective C
OAuthのFramework for Objective-C
http://code.google.com/p/oauthconsumer/wiki/UsingOAuthConsumer
- Comments: 0
- Trackbacks: 0
iPhoneアプリ勉強会をしたい
- 2009-11-02 (Mon)
- Objective C
学内でiPhoneアプリの勉強会をしようと誘われるも、私を含めて2人しかいない。
そもそもMacユーザがいない。みんなMacBookを買うのだ!
Objective-Cは面白い言語だから、今日の授業中にでも荻原本を読もう。
早くiPhoneアプリを作りたいおっお・・・
- Comments: 0
- Trackbacks: 0
メソッドを実行時に決定できる
- 2009-11-01 (Sun)
- Objective C
面白い
詳解Objective-C 2.0 p.149
SEL method = (cond1) ? @selector(activate:) : @selector(hide:); id obj = (cond2) ? myDoc : defaultDoc; [target performSelector:method withObject:obj];
cond1によって、activate メソッド実行するか、hide メソッドを実行するかが決まる。
この2つのメッセージ式は同じ処理をするらしい
[target description]; [target performSelector: @selector(description)];
ただし、存在しないセレクタを指定してもコンパイラはエラーを吐かない。
そのメッセージのレシーバとなるオブジェクトは動的に決定されるから。
- Comments: 0
- Trackbacks: 0
ガーベジコレクションを使う
- 2009-11-01 (Sun)
- Objective C
Objective-Cでガベージコレクションを使う場合、以下のコンパイルオプションが必要
-fobjc-gc ガーベジコレクション+カウンタ管理方式を使う場合
-fobjc-gc-only ガーベジコレクションのみを使う場合(推奨)
- Comments: 0
- Trackbacks: 0
Objective-Cでもするか
- 2009-11-01 (Sun)
- Objective C
iPhoneのアプリ作りたいし、Objective-Cでもするか。
言語に慣れるまでがきつい。早くCocoa使いたいなぁ
- Comments: 0
- Trackbacks: 0
シグネチャが異なる場合
- 2009-10-29 (Thu)
- Objective C
シグネチャ・・・セレクタと型情報を合わせたもの
- (id)cellAtRow:(int)row column:(int)col;
原則:同じセレクタを持つメッセージは引数や返り値の型(シグネチャ)は同じにすべき
チェックの仕方(-Wallオプションはだめ)
コンパイル時に
-Wstrict-selector-match
オプションをつける。
- Comments: 0
- Trackbacks: 0
Objective Cはおもしろい!
- 2009-10-26 (Mon)
- Objective C
Objective Cのプログラム書いてるけど、オブジェクト同士がまさに対話しているかのようだ。
【ダウンロード】 詳解 Objective-C 2.0
上記のURLでソースを落とせるみたい。
#import <stdio.h>
#import <Foundation/NSObject.h>
@interface Volume : NSObject
{
int val;
int min, max, step;
}
- (id)initWithMin:(int) a max:(int)b step:(int)s;
- (int)value;
- (id)up;
- (id)down;
@end
@implementation Volume
- (id)initWithMin:(int)a max:(int)b step:(int)s
{
self = [super init];
if (self != nil) {
val = min = a;
max = b;
step = s;
}
return self;
}
- (int)value
{
return val;
}
- (id)up
{
if ((val += step) > max)
val = max;
return self;
}
- (id)down
{
if ((val -= step) < min)
val = min;
return self;
}
@end
int main() {
id v, w;
v = [[Volume alloc] initWithMin:0 max:10 step:2];
w = [[Volume alloc] initWithMin:0 max:9 step:3];
[v up];
printf("%d %d\n", [v value], [w value]);
[v up];
[w up];
printf("%d %d\n", [v value], [w value]);
[v down];
[w down];
printf("%d %d\n", [v value], [w value]);
return 0;
}
windows:objc yup$ gcc -framework Foundation volume.m
windows:objc yup$ ./a.out
2 0
4 3
2 0
- Comments: 0
- Trackbacks: 0
- Search
- Feeds
- Meta
-