作者aecho (星空下的鲔鱼)
看板MacDev
标题Re: [问题] 关於 getter method
时间Sat Jul 3 20:29:06 2010
※ 引述《Senkousha ( )》之铭言:
: hmm, 想请问一下,
: 假设我在 interface 里宣告一个 id 变数要 export 出去,
: 但因为内部是用 NSMutableArray 实作的,
: 不能让外部的呼叫者拿到,因此用 getter 包了一层 copy…
: 那我自己在内部有办法产生另外一个(真的) getter,
: 不是拿 copy 出的 id,而是直接拿到真正的 NSMutableArray pointer 吗?
: ----
: 虽然说在 init 里面 alloc 好之後就可以直接存取,
: 但是心里总觉得毛毛的(?)想要用 [self iVarName]…
有一种写法,只是要多key好几行…
通常是为了封装自己的实作,让外部的人只知道公开的介面。
但是如果外部的人根本就是自己,
而且这东西也不是要包成library之类的…或是包成元件~~
这样写我是觉得很浪费时间…
Foo.h
@interface Foo
{
@private
id mPrivateData;
}
@property ....
Foo.m
@interface PrivateFoo
{
NSInteger ....;
NSString *....;
....
}
@end
@implementation Foo
- (id)init
{
if (self = [super init])
{
mPrivateData = [[PrivateFoo alloc] init];
if (mPrivateData == nil)
{
[self release];
return nil;
}
// Custom initialization
...
}
return self;
}
- (void)dealloc
{
[mPrivateData release]; mPrivateData = nil;
[super dealloc];
}
@end
--
◣ ◢
<◢. .◣ 野ブタパワー ~~~
╰◥ @@ ◤ 注入!!
>
︱﹨
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.160.239.148